GetMessage com um tempo limite

Eu tenho um aplicativo que chamadas segunda threadGetMessage() em um loop. Em algum momento, o primeiro thread percebe que o usuário deseja encerrar o aplicativo e notifica o segundo thread que deve ser encerrado. Como o segundo segmento está preso emGetMessage(), o programa nunca sai. Existe uma maneira de esperar por mensagens com um tempo limite? Estou aberto a outras ideias também.

EDITAR: (explicações adicionais)

O segundo segmento executa esse trecho de código:

while ( !m_quit && GetMessage( &msg, NULL, 0, 0 ) )
{
    TranslateMessage( &msg );
    DispatchMessage( &msg );
}

Os primeiros conjuntos de threadsm_quit para verdade.

questionAnswers(5)

yourAnswerToTheQuestion