thread(100分)

  • 主题发起人 guo_qpeter
  • 开始时间
一般尽量少用THREAD.WAITFOR?????????????
 
在线程A、B中用CreateEvent创建同名事件SameEvent,
A:=ThreadA.Create(true,...);
B:=ThreadA.Create(true,...);
A.Resume;
B.Resume;
ThreadA.Execute
begin
while not terminateddo
begin

end;
///A线程执行完毕通知线程B运行
if terminated then
SetEvent(....)
end;

ThreadB.Execute
var
WaitResult:integer;
begin
while not terminateddo
begin
////无限期等待SameEvent事件
WaitResult:=WaitForSingleObject(SameEvent事件的handle,Infinite);
if WaitResult=Wait_Object_0 then
..........
..........
end;
end;

具体程序可按上面思路完成
 
很感谢 LIU JZX.
你的思路是我最早的版本. 我业已贴在上面.
我现在换了一种方法.彻底解决MODEM INITIALIZE 的错误.
你的回答我很感谢.
不过我对论坛感到一点伤心!
 
顶部