title: Execute a delegate in the ui thread (using message pump)
body: <p>I have a background thread that handles communication with an external service. Each time the background thread receives a message I'd like to pass it to the UI thread for further processing (displaying to user).</p>
  
  <p>Currently I've made a thread safe message queue that is pooled periodically in Timer.Tick and filled in the background thread. But this solution is sub optimal. </p>
  
  <p>Do you know how to use message pump to pass events from background thread to ui thread?</p>