登陆 / 注册 搜索

USERCENTER

站内搜索引擎

查看:5211| 回复: 2
打印 上一主题 下一主题

[其他] 一行代码把开发人员耍得团团转~

[复制链接]
跳转到指定楼层
楼主
仗剑天涯吾是土豪 发表于 2017-11-18 23:05:43 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式
    事情发生在几年前, 那时候大家忙活完一个新需求, 终于上线了, 都想松一口气。
   
    可是很快就发生了一件令人抓狂的事情, 刚上线的系统总是莫名其妙的崩溃, 每次都得重启才能解决。更要命的是完全摸不到规律, 系统运行着运行着就down了, 毫不留情面。
   
    赶紧组织人员检查, 开发人员拍着胸脯, 信心满满: 肯定不是我们的问题! 先查查是不是环境的问题!
   
    内存使用, 正常 。
    硬盘空间,正常。
    检查日志, 正常, 更找不到什么Outof Memory。
   
    难道是黑客入侵,工程师仔细检查系统日志,也没有什么蛛丝马迹。 我们的系统也不涉及到钱, 根本不值得入侵。
   
    可是系统总是那么静悄悄的,冷酷的down机, 快把大家都逼疯了。#373:

    如果是你该怎么办?怀疑了一圈别人的问题以后,最好也怀疑一下自己。

#f465:
   
    我们就开始严格的审查这个新需求新加的,和改动的代码,10几双眼睛不知道看了多少遍, 还是一无所获。

    后来不知道是谁,偶然看到了程序中有这么一行可怕的代码: System.exit(1) , 然后赶紧检查它和这个改动的关系。

 exitthesystem.jpg 一行代码把开发人员耍得团团转~
   
    果然, 在改动之前,这行代码永远都不会被执行到,相当于死代码,它就像个定时炸弹躺着那里,一动不动至少有5年了!
   
    现在终于等来了被触发的一刻:虽然我们的这次改动离这个炸弹极其遥远, 但的确会导致程序会在某种情况下进入这一分支, 于是System.exit(1); 被执行,炸弹爆炸。 JVM悄无声息的退出了 !
   
    重启系统, 还会进入这一分支,System.exit, 系统再次退出。
   
    就这么周而复始, 把我们这帮码农戏耍了好几天 #383:

    所以各位小伙伴,以后不要轻易使用System.exit了, 建议你也马上搜索一下你的项目, 看看有没有System.exit这个炸弹吧。
上一篇:什么是Java泛型?摘要:一、新 王 登 基 登基以后第一次早朝, 意气 ...
下一篇:学IT技术应该上培训班吗?摘要:先亮观点:如果你是科班出身,还去上培训班,简直 ...
回复

使用道具 举报

那一缕微光出类拔萃 发表于 2018-1-20 22:41:58 来自手机 | 只看该作者
我是个凑数的。。。
板凳
初晓微芒出类拔萃 发表于 2018-1-21 20:07:38 来自手机 | 只看该作者
专业抢沙发的!哈哈
您需要登录后才可以回帖 登录 | 立即注册  

本版积分规则

关于我们|小黑屋|手机版|Archiver|古黑论

GMT+8, 2019-6-25 12:14 , Processed in 0.128443 second(s), 33 queries , Redis On.

© 2015-2019 GuHei.Net

Powered by Discuz! X3.4

快速回复 返回列表