terminate(),只给线程一个terminated := true; 的信号。
在工作线程的执行单元:execute ni应该有类似一下代码:
thread1.execute()
begin
while thread1.terminated =false
begin
.
.
.
你的执行代码
。
.
.
end
end;
这样,在你主程序给个terminate()动作,工作线程将自动结束;
在工作线程的执行单元:execute ni应该有类似一下代码:
thread1.execute()
begin
while thread1.terminated =false
begin
.
.
.
你的执行代码
。
.
.
end
end;
这样,在你主程序给个terminate()动作,工作线程将自动结束;
解决方案 »
- 请大家看一下为什么不验证旧密码是否正确,请大家顺便指导一下代码哪里有不足,谢谢
- 关于在已经添加CheckBox的TreeView中响应MouseUp事件的提问
- 如此软件需求
- 最近找工作,发现一条招聘信息
- 一个三层结构中间层的问题!高手请进!!1
- adoqury.delete为什么不能用?
- 有关网络通信的问题,高人帮忙看看!!!!!!!
- 关于function SendBuf(var Buf; Count: Integer): Integer的问题.
- 如何捕获子线程中的Exception
- 如何卸载动态装载的组件?
- 我的oicq号被盗了!!!!!痛啊^请问怎么取回??有没有这方面有经验的?
- 关于网络通信底层的开发
begin
while not Terminated do
//Note: not "Thread1.Terminated"
begin
.
.
.
你的执行代码
。
.
.
end;
//Note: 一般来说,TThread的Execute 的框架就是这样的。
end;停止:
Thread1.Terminate;
Thread1.WaitFor; //等待结束。