关于线程中Synchronize()函数的调用问题!
翰墨书缘 2005-09-23 09:03:08 各位走过路过的高手帮帮忙喽~~~~~~嘿嘿!!
小弟在做串口接收数据的时候用的是多线程,其中主体的Excute中只有几句代码
while not Terminated do
begin
Synchronize(ReadPort);
end;
现在的问题是,我开了三个线程用来接收串口一、二、三上来的数据,在一个线程接收的时候我将其余的两个线程挂起(线程名.Suspend),在不断的挂起(Suspend),恢复(Resume)过程中,会出现程序死在那里的现象(本来接收线程开的时候CPU占用率达到80%以上,但是这时CPU占用率不超过5%)。这三个线程都是同一个类的不同对象。我就想问问各位高手,怎么样能避免程序死在那里?是不是由于Synchronize函数才会出现这种情况的啊?先谢谢大家了!!分不够再加~~~~