Delphi中的线程类--之(2)[8]

[入库:2005年8月18日] [更新:2007年3月24日]

本文简介:选择自 raptor 的 blog

因为onterminate事件是在synchronize中执行的,所以本质上它并不是线程代码,而是主线程代码(具体见后面对synchronize的分析)。

执行完onterminate后,将线程类的ffinished标志设置为true

接下来执行signalsyncevent过程,其代码如下:

procedure signalsyncevent;

begin

  setevent(syncevent);

end;

也很简单,就是设置一下一个全局eventsyncevent,关于event的使用,本文将在后文详述,而syncevent的用途将在waitfor过程中说明。

然后根据freethread中保存的freeonterminate设置决定是否释放线程类,在线程类释放时,还有一些些操作,详见接下来的析构函数实现。

最后调用endthread结束线程,返回线程返回值。

本文关键:Thread Event CriticalSection Synchronize
  相关方案
Google
 

本站最佳浏览方式为 分辨率 1024x768 IE 6.0(或更高版本的 IE浏览器)

go top