5,388
社区成员
发帖
与我相关
我的任务
分享
问题1:
我想不到什么情况下会一边创建,一边退出。
问题2:
是否自动释放内存要看你的 FreeOnTerminate 的设置。
Thread.Terminate 只是设置线程的一个成员为True。至于退出,我觉得需要你为线程指定OnTernimate方法,并在OnTernimate中设置该变量为True。像这样:
procedure DoTernimate(Sender: TObject);
begin
//其它需要处理的方法
Finished := True;
end;
需要结束时
if not Thread.Suspended then
Thread.Resume;
Thread.Ternimate;
while not Finished do
Application.ProcessMessages;
这是我使用的方法。
你可以看看源码就知道了。