线程退出时的几种情况:
1. 正常情况下,线程退出,会调用对象的析构函数。
如:在线程中创建对象,线程正常退出时,会调用该对象的析构函数。
2. 在线程中调用 ExitThread 函数时(意外结束线程),不会调用析构函数。
VOID WINAPI ExitThread(
__in DWORD dwExitCode //退出码
);
3. 在其当前线程中结束其他线程(意外结束线程),也会造成 不调用析构函数
BOOL WINAPI TerminateThread(
__in_out HANDLE hThread, // 线程句柄
__in DWORD dwExitCode // 退出码
);