我写了一个Thread.descendent类,在execute方法中放置了一个无限循环以侦听com事件,使用无限循环来完成这个任务是否被认为是不好的线程实践?应用程序运行良好,不会冻结,并且始终响应,我只是回答因为我想使用最佳的线程方法。
procedure TMyThread.Execute;
begin
while True and not Terminated do
begin
AResult:= FListener.GetResult(Param1,Param2,5000);
if not VarIsNull(AResult) then
Synchronize(Process);
end;
end;
TMyThread.Terminate
,请检查行while True and not Terminated do
,在那里我检查线程是否已终止。 - SalvadorA
来说,“true and A
”与“A”是相同的东西。 - Andreas Rejbrand