内存死机问题
@ 归零 | 星期一,三月 10 日,2014 年 | 1 分钟阅读 | 更新于 星期一,三月 10 日,2014 年

最近遇到一个内存导致死机的问题,这种问题总是让人很恼火。

Mstar linux方案,由于对指针的检测不够完善,导致使用了空指针。一个问题整了我一天多时间, 最后查出来尽然是珠海有线的码流里边有一个bouquet id是 -256,而代码里边没有处理到这种情况,获取到空指针, 而在使用的时候又没有检测。幸亏有gdb可以用,可以定位到是那个模块出了问题。完了想想本来这个问题要不 了那么长时间,一开始感觉这个变量有点问题,可就被脑子里那种 “不可能这儿出问题啊"的想法打消了,也许 很多程序员会犯这种错误,总是很确信的说"这个不可能”,难道这个真的不可能吗?其实自己也不知道,不知道 从哪儿来的这种莫名其妙的自信。 由这个问题想到:

1)不要轻易做任何假设,负责可能会影响你做出准确的判断。

2)时时刻刻在使用指针时要检测是否为空,这个构建健壮软件的必要条件。

3)要让程序能经得起一些意味发生的情况,比如获取到错误变量等。

© 2014 - 2022 Lionel's Blog

Powered by Hugo with theme Dream.