子线程中定义消息,进行消息循环
窗口多线程中倘若要使子线程能够接收并处理各种消息,则应该在子线程中增加消息循环,不断接收和处理消息,当然这样子的子线程就会像主线程一样运行,只不过处理的消息一般为自定义消息了,而本应在子线程中做的各种处理则变成了消息循环中对不同消息的处理.同时应注意添加了消息循环的子线程同窗口主线程相似,在出现对某个消息进行大量处理时将导致对后续消息处理的暂停 .
消息循环:
peekmessage(&msg,null,0,0,pm_remove);
while(getmessage(&msg,null,0,0))
{
switch(msg.message)
{
case wm_close:
return 0;
}
}