我在WinMain函数创建一个线程,之后我有一个经典消息循环:Win32,等待主msg队列中的线程?
while(GetMessage(&msg, NULL, 0, 0))
{
if (!done){
GetExitCodeThread(dThread,&dwCode);
if (dwCode!=STILL_ACTIVE){
//thread done
}
}
if (!IsDialogMessage (UWnd, & msg))
{
TranslateMessage (& msg);
DispatchMessage (& msg);
}
}
这工作不错,但如果线程结束,也不会触发,直到窗口上的某些操作完成后(鼠标,焦点等)。当收到消息或线程完成时,如何获得循环触发器?
谢谢...
谢谢,这正是我所做的,完美的工作:) – Marin 2010-11-10 14:30:15
线程消息无法在WindowPoc中处理,因为它们没有关联的窗口(将窗口过程传递给?)。也就是说,你的建议将起作用,因为没有必要处理这个消息,考虑到示例代码的结构,它的发布已经足够了。 – Steve 2010-11-16 14:28:53