delphi for i := 1 to 10 do begin if Terminated then Exit; sl

问题描述:

delphi for i := 1 to 10 do begin if Terminated then Exit; sleep(100); end;
for i := 1 to 10 do
begin
if Terminated then
Exit;
sleep(100);
end;
1个回答 分类:综合 2014-10-10

问题解答:

我来补答
是这让线程等待一秒钟(10*100=1000毫秒)
在等待的这一秒钟内,如果收到终止请求就立即退出线程(最多等100毫秒就能退出).
这样做法主要是想让线程的实时响应性更好.
这与直接 sleep(1000) 有所区别,如果直接sleep(1000) ,那线程收到终止请求后,就不是立即退出了,而是可能等1000毫秒后才能退出.如果你想等待的时间不是一秒,而是更长时间,那更不能直到用一个sleep来做,记住一定要用一个 for 循环来实现.否则线程会死等在那里.
 
 
展开全文阅读
剩余:2000