关灯
护眼
字体:

程序员的正常生活(6)

作者: 小心玻璃 阅读记录

确认几位领导走出了实验室,郑硕辉自来熟地随口道,“大领导亲自带你们来实验室,真是很有面子啊。”

旁边一个按着遥控器不停换台的瘦高个哧了一声,“做出这么挫的东西,多大面子能搞定这回的问题。”

“□□!”郑硕辉瞪了瘦高个一眼,对方哼了声扭头继续做他的测试了。

丁赤和郭卫东都是一脸尴尬,韩邵晨则是毫无反应地摆弄自己带来的测试机,谭明明看看这个看看那个,忍不住开口,“师傅,这种测几天才能出问题的bug要怎么复现查找原因啊?”

那个□□又哧了一声,看到谭明明俏丽的脸这才闭上了嘴。

韩邵晨回答,“已经发布准备商用的机器,调试信息都已经关闭不再打印出来,这种情况下碰到的问题很难用常规调试的手段。现在这个情况,只能先从两方面着手,一个是查看同样操作情况下的测试机会打印出什么样日志,查看一下能不能找到漏洞,同时review在这种操作下会涉及到的所有源代码。”

谭明明惊讶道,“这不是大海捞针吗?”

“具体问题原因还没有头绪,这是没办法的办法,先看底层代码,这部分源代码可以很快看完,暂时先不去看linux内核源码,只看你们为了机顶盒写进去的那部分,一两天就能看完。你这边也联系一下后方,让负责上层应用的同事同时跟进这个问题。如果底层代码找不出问题,就需要从上层代码找,这样工作量会更大一些。”韩邵晨说完,便在向郑硕辉再次确认死机之前涉及到的所有操作。

谭明明吐吐舌头,也就她师傅这种猛人能说两天看完源代码了,她自己负责的模块当初都用了好几天才看明白。韩邵晨明明只负责高清图像处理模块,可现下这模样是要review所有模块包括系统流程的底层源码了,而且居然敢说他这么短的时间就能看完!

好吧,人家敢说也敢做。确认好操作之后,韩邵晨交代谭明明用测试机复现死机之前的所有操作步骤,打印出日志信息以供参考。自己则打开笔记本调出整个机顶盒的底层代码开始看了起来。

幸好对方的技术人员也很专业,操作也是按照他们的测试文档流程来的,复现步骤很容易,韩邵晨大致浏览了下就知道自己应该重点查看哪些操作相关的源代码。

还不到一个小时,韩邵晨突然抬头问谭明明,“最终发布之前每个模块代码做过联合review没?”

“好像有,但是因为催得太紧,大家可能都看得比较仓促。”很熟悉自己师傅说话风格的谭明明接着惊讶道,“师傅,你已经找到问题原因了吗?”

闻言,周围的人都看了过来。

“找到一个问题点,先修复重新测试。”韩邵晨已经在动手编译了,“我继续复查剩下的代码。”

“什么原因?”丁赤和郑硕辉几乎同时开口。

韩邵晨看了一眼郑硕辉,“源码漏洞,具体内容能不能透露需要项目经理同意。”

“切。出这么多问题还好意思说保密条例。”□□在一旁冷哼。

丁赤强笑着打圆场:“没关系,我先了解一下,后面再跟你们沟通。”说完就拉着韩邵晨带上笔记本找了个没人的角落。

谭明明和郭卫东默默的跟上。

韩邵晨点了点屏幕,“有人把线程退出的函数里的一句关键代码注释了,所有线程都没有退出,随着用户的操作线程不断产生,不断占用处理器和更多内存资源,即使在待机程序调用之后线程资源也不会被释放,机器运行的时间越长,占用的就越多,到最后系统必然会没反应。”至于这种错误能不能透露给客户他就不知道了。

“简直啪啪打脸。”谭明明接了句,“我的个天,这注释是谁码上去的,一点都不符合代码规范,还有这部分代码谁review的,扣他们奖金!”

即使不大懂软件,也能明白那两条斜线摆在一句代码前就会把这句代码的作用废除掉,不知道是谁出于什么目的有意还是无意的随手这么敲了两下,就让他们如此大动干戈。真是郁闷到顶点。

几个人面面相觑(除了说完话又开始埋头看代码的韩邵晨),丁赤叹口气,“就跟他们说我们线程处理的有点小问题,具体原因就别说了,不然简直让人家怀疑我们的专业性。”

“其实也不能全怪咱们的开发人员,”郭卫东说了句公道话,“我看了你们项目上每步流程,时间压缩得太厉害,压力之下有疏漏确实可以理解,谁知道会导致这么严重的问题。”

再说下去就是骂大领导了,谭明明缩缩脑袋,不敢参与他们的对话,低头问韩邵晨,“师傅,还有多久能编译完?”