上班的第四百七十四天——无解的bug

    今天认真找了一天的bug,其实就是定位错误,然后仔细看那个地方的代码。我看了,仔细地,但是没有发现任何逻辑上的漏洞,但是考虑到服务器是有几条线程在跑,而且由于服务器的主业务逻辑是通过一条while循环实现的,就相当于单线程,那么所有逻辑代码基本上是没有加锁的。有可能是多线程引起的问题,但多线程的东西是很难跟踪的,外加这个只有1个玩家会出现,其他都没有出现。无法重现现象,如何解决bug?

    就像《金田一杀人事件》那样,如果凶手不再杀多一个人,是很难找到凶手的,案件基本是无解了。

    当然,还存在另外一种可能,那个玩家是黑客玩家,能够发起重放攻击。对于重放攻击,解决办法一般都是加时间戳或者序列号,而这部分代码我没有,明天要问问主程才知道,那就只能明天再说了。

    另外,今天我还开始学MySql了。算了一下,这个星期以来,我看了好多书,网络架构、lu和数据库,都有5本书了。以前我不知道看一本书可以那么快,但现在有基础后会发现,他们说的我很多都懂,省下了不少时间。当然,这也要好书才有这个效果,凑字数的烂书我是非常鄙视的。

    明天继续深入研究MySql,顺便跟主程沟通下,这个bug逻辑上没找到漏洞,但添加了打印信息,以后再现才能看日志找问题,还是分点别的工作给我吧。

    话说,我昨天就发现了,坐我前面那个搞客户端的,他右手只有三根手指!但是他是客户端的二把手,好励志啊!看着他敲代码,一丝不苟的,洋洋洒洒十万行代码都是一步一个脚印敲过来的。

    我还有什么理由不努力?

你可能感兴趣的:(上班的第四百七十四天——无解的bug)