subject_22487.htm
来自「一些关于vc的问答」· HTM 代码 · 共 24 行
HTM
24 行
<p>
序号:22487 发表者:何四 发表日期:2002-11-26 14:06:30
<br>主题:线程中的善后工作如何处理
<br>内容:在主线程中结束另外一个线程,我使用 PostThreadMessage 函数发送WM_QUIT消息,在被结束的线程中,我想做些清理工作,如删除动态分配的内存等,但是在线程中的OnClose和OnDestory函数中均未被触发,这是为什么,哪个函数在此线程结束时能被调用?
<br><a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p>
<hr size=1>
<blockquote><p>
<font color=red>答案被接受</font><br>回复者:CDMA2000 回复日期:2002-11-26 14:23:19
<br>内容:如果你是工作者线程,你肯定要在线程函数重中拦截WM_QUIT消息<BR>如果你是用户界面线程,使用了CWinThread类的话,你可以重载该<BR>类的PreTranslateMessage函数,来拦截WM_QUIT,进行你的处理<BR>
<br>
<a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p></blockquote>
<hr size=1>
<blockquote><p>
回复者:何四 回复日期:2002-11-26 21:31:00
<br>内容:谢了!<BR>我使用的是界面线程,在PreTranslateMessage函数中,从其参数(MSG* pMsg)中判断<BR><BR>if(pMsg->message==WM_QUIT)<BR>{<BR> ... //处理<BR>}<BR><BR>就可以了。
<br>
<a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p></blockquote>
<hr size=1>
<blockquote><p>
回复者:smilegan 回复日期:2003-01-11 09:45:11
<br>内容:工作线程和界面线程的区别是什么?请指点
<br>
<a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p></blockquote>
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?