本文整理自网络,侵删。
delphi判断线程是否释放
function CheckThreadFreed(aThread: TThread): Byte;
var
i: DWord;
IsQuit: Boolean;
begin
if Assigned(aThread) then
begin
IsQuit := GetExitCodeThread(aThread.Handle, i);
if IsQuit then // If the function succeeds, the return value is nonzero.
begin
if i = STILL_ACTIVE then // If the specified thread has not terminated,
Result := 1
else
Result := 2; //aThread未Free,因为Tthread.Destroy中有执行语句
end else
Result := 0; //可以用GetLastError取得错误代码
end else
Result := 3;
end;
相关阅读 >>
winapi 字符及字符串函数(1): charlower - 字符或字符串转小写
Delphi http协议验证访问datasnap rest 服务器
Delphi xe10 fdmemtable 数据保存本地和从本地加载
更多相关阅读请进入《Delphi》频道 >>