P
prtmon
Unregistered / Unconfirmed
GUEST, unregistred user!
多线程
constructor TMyThread.Create();
begin
inherited Create(True);
FreeOnTerminate:=True;
Priority:=tpLowest;
end;
procedure TMyThread.Execute;
begin
repeat
{很长的处理过程
EnterCriticalSection(Critical1);
.........
LeaveCriticalSection(Critical1);
}
until Terminated;
end;
按钮1事件:
for i:=0 to 30do
MyDFCJThread.Resume;
按钮2事件:
for i:=0 to 30do
MyDFCJThread.Suspend;
第一次执行按钮1事件,成功执行线程
过一段时间执行按钮2事件,成功挂起线程
再按按钮1事件,成功恢复线程
过一段时间执行按钮2事件,成功挂起线程
再按按钮1事件,竟然没反应了,不知道是什么原因...
constructor TMyThread.Create();
begin
inherited Create(True);
FreeOnTerminate:=True;
Priority:=tpLowest;
end;
procedure TMyThread.Execute;
begin
repeat
{很长的处理过程
EnterCriticalSection(Critical1);
.........
LeaveCriticalSection(Critical1);
}
until Terminated;
end;
按钮1事件:
for i:=0 to 30do
MyDFCJThread.Resume;
按钮2事件:
for i:=0 to 30do
MyDFCJThread.Suspend;
第一次执行按钮1事件,成功执行线程
过一段时间执行按钮2事件,成功挂起线程
再按按钮1事件,成功恢复线程
过一段时间执行按钮2事件,成功挂起线程
再按按钮1事件,竟然没反应了,不知道是什么原因...