请问线程对象的Free和Terminate有什么不一样?谢谢(20分)

  • 主题发起人 主题发起人 lnzxy
  • 开始时间 开始时间
L

lnzxy

Unregistered / Unconfirmed
GUEST, unregistred user!
请问线程对象的Free和Terminate有什么不一样?谢谢
 
区别很小,,嗬嗬,,
Terminate是将线程终止,而前面的Free不仅仅会将线程终止,而且会将线程运行所占用的
资源予以释放,,一般来说,,你应该这样使用线程:在线程的构造函数中设置FreeOnTerminate的
属性为真,即让线程终止后释放掉占用的资源,在你自定义的线程的析构函数中使用
Inherited Destroy 方法,你在线程外的其它地方使用你说的后面一个方法,也可让线程自然终止。
 
其实这两个函数还是有区别的!terminate只是将terminated的属性设置为True!
如果你自己的execute的函数是死循环,并且内没有做对terminated的判断。
那么你的线程是不会自己结束的。free是释放掉占用的资源。
 
多人接受答案了。
 
后退
顶部