多线程程序运行运行着,突然就没了.也没任何提示 ( 积分: 300 )

  • 主题发起人 主题发起人 qinqijun
  • 开始时间 开始时间
Q

qinqijun

Unregistered / Unconfirmed
GUEST, unregistred user!
应该从何入手啊,急急急....
线程在40个以上,线程与主程序之间用record类型的变量(数组)进行数据交换,
现在我用写log文件的方法,但是查找非常困难,有没有谁遇到过类似的问题啊?
请指教下,多谢多谢了...
 
这类问题是比较难处理的
我现在用的方法是
先创建一个基类
在这个类里面处理同步问题
然后基它线程都做为它的子类创建
然后使用接口访问所有功能线程
即使出现了问题,也比较好查
 
线程多了确实不好找问题,有的时候单步调试根本发现不了问题。我用得最多的就是写日志,然后再分析日志
 
或许是内存越界,程序崩溃
 
重点查全局变量争取访问的问题 --特别是涉及到动态数组和指针类型
全局动态数组相当于全局指针,只是由编译器来实现内存的申请的释放,如果出现争抢写入的话,可能会让程序跑飞--但这种代码很随机的,不好说,突然没了就不奇怪了。
 
貌似内存溢出。。。。。
也像越界访问,将本不属于某个线程某个指针应访问的空间的内容给修改了,不过你的线程数太多了,如果每个线程的实现都不一样的话,你可以不用过元旦了[:D]
 
后退
顶部