简单的模拟多线程引用计数原理

作者: NickYang 分类: 技术文章,程序开发 发布时间: 2011-12-18 16:08

大家都知道多线程编程学习中有一个很重要的东西——引用计数,一个线程的生或死或运行状态都跟这个计数有关,他同样是在适当的时候加加减减的。这篇文章的目的就是模拟下简单的引用计数,原因是因为项目中GateServer莫名宕机,而且运维没有给过来宕机详细信息中的偏移地址,所以纵然我们又cod文件也没法查找问题所在,所以就想出了这样一个笨办法,在每个函数都加上调用计数,这样超过一定次数的我们就认为它可能是死递归,从而方便确定问题。下面给出一个简单的引用计数类的代码。(没有写成模板,因为模板的理解成本有点高,所以在项目中不太使用)

下载我们写一个例子来测试下,我们故意写一个死递归来检验代码。如下:

结果我们发现打出了该函数可能死递归的Log,这样我们就方便查找问题了。希望对你有用!

如果觉得我的文章对您有用,请随意打赏。您的支持将鼓励我继续创作!

2条评论
  • rangerlee

    2011 年 12 月 19 日 19:00

    呵呵,果然是笨办法,只要有效就行,你们没有采用异常捕捉生成DUMP机制吗

    畅言 火狐浏览器 Windows XP
    1. eliteYang

      2011 年 12 月 19 日 22:57

      用了minidump。但是没有dump生成,所以就没办法了

      神话 火狐浏览器 Windows 7

发表评论

电子邮件地址不会被公开。 必填项已用*标注