title: Issues with Galasoft Messenger class in multi threaded environment
body: <p>I have two classes lets say ClassA and ClassB. I have to communicate with the help of Galasoft Messenger class. In ClassA, I have the following code :-</p>
  
  <p>Class A :</p>
  
  <pre><code>Messenger.Default.Register&lt;NotifyInterface&gt;(this, PerformAction);
  
  private void PerformAction(NotifyInterface objNotify)
  {
     switch(objNotify.SomeProperty)
     {
      case "A":
         // Do Something
         break;
      case "B":
         // Do something else
         break;
      }
  }
  </code></pre>
  
  <p>From ClassB I want to send parallel notifications with the help of Messenger i.e. I want to execute 'case A' and 'case B' parallely. I am doing something like this.</p>
  
  <p>ClassB:</p>
  
  <pre><code>System.Threading.ThreadPool.QueueUserWorkItem((object context) =&gt;
          {
              Messenger.Default.Send&lt;NotifyInterface&gt;(objNotifyCaseA);                
          }, null);
  
  Messenger.Default.Send&lt;NotifyInterface&gt;(objNotifyCaseB);
  </code></pre>
  
  <p>But the second notification is not received until the first one gets over. Is this a limitation of Messenger class that two notifications cannot be sent in parallel?</p>