Executar um delegado no thread da interface do usuário (usando a bomba de mensagens)

Eu tenho um thread de fundo que lida com a comunicação com um serviço externo. Sempre que o encadeamento em segundo plano recebe uma mensagem, eu gostaria de passá-lo ao thread da interface do usuário para processamento adicional (exibição para o usuário).

Atualmente eu fiz uma fila de mensagens seguras de thread que é agrupada periodicamente em Timer.Tick e preenchida no thread de segundo plano. Mas esta solução é sub ótima.

Você sabe como usar a bomba de mensagens para transmitir eventos do thread de segundo plano para o thread ui?

questionAnswers(5)

yourAnswerToTheQuestion