BCB线程结束问题
例如启动一个线程thread,现在希望不论是线程正常结束还是强制结束都要去执行f函数,那么f函数写在那里。
[解决办法]
在Execute方法里使用
try
{
otherCall();
}
__finally
{
f()
}
至于你说的强制结束不知道是什么意思,SDK相关API明确说明不要强制结束线程,否则会造成资源泄漏的。如果代码里有TerminateThread,说明设计有问题。非合格程序员为之。
[解决办法]
do{
SetEvent(m_QuitEvent);
}while(m_Active)
执行该语句就可以执行f函数了。
[解决办法]
所谓的强制关闭线程,其实可以在线程内判断是否结束表示,设定一个事件,或者在循环内检查terminated属性是否为真,如果为真,则执行你的那个函数,没必要用terminatedthread