多线程的奇怪问题
各位大侠,我在编写多线程程序时,发现如果程序线程中函数的调用
层次比较多时,调试程序时发现程序执行的顺序没有按照编写的顺序,
而是感觉是在乱跳
我猜想可能是因为启动一个线程开辟的资源可能是有限的
代码太多,函数调用的层次过多时,导致资源(可能是堆栈的空间)等不够用
因此造成程序执行的混乱
上面只是我的猜想,不知具体是什么原因,恳请大侠指点迷津
另外要深入搞懂多线程的问题,可以参看什么样的参考书,再次谢了
问题点数:50、回复次数:4Top
1 楼tchaikov()回复于 2000-08-21 11:03:00 得分 20
去掉编译优化看看
project->options->compiler->optimization
Top
2 楼LittleStar(牛牛)回复于 2000-08-21 13:45:00 得分 0
可以学习Delphi中带的SDK。写一个SDK的多线程,学一下线程互斥、同步的问题即可。Top
3 楼alin()回复于 2000-08-21 17:17:00 得分 30
线程调试是比较繁的,WIN系统是以事件为触发的,多个线程调试更是如此,你最好一个线程一个线程地调试,不要在调试一个线程的同时调试另一个线程;同时每个线程间最好没有太多的内存间的数据交换,这与资源没什么关系(如果是资源调度问题,WINDOW就不用去卖钱了)Top
4 楼JGTM2000(铁马小子)回复于 2000-08-24 16:07:00 得分 0
乱跳?不对吗?多线程代码在执行的时候不就是这样吗?Top




