title: Is c# event in Unity MonoBehaviour single threaded?
body: <p>Is it true that <code>event</code> in Unity's <code>Monobehavior</code> is single threaded? When I trigger an event, if one of the listener raises an exception, the catch block will be executed. I assume once <code>class A</code> fires an event, the thread will go over each subscriber. When each subscriber finishes, does <code>class A</code> continue in the same thread?</p>
  <pre class="lang-csharp prettyprint-override"><code>public class EventExample : MonoBehaviour
  {
      public delegate void ExampleEventHandler();
      public static event ExampleEventHandler OneDayPassed;
  
      public void Start NextTurn()
      {
          try {
              if (OneDayPassed != null)
              {
                  OneDayPassed();
              }
          }
          catch(Exception e)
          {
              // will catch error here
          }
      }
  }
  
  public class EntityWatcher : MonoBehaviour
  {
      void Start()
      {
          EventExample.OneDayPassed += this.PrepareNextDay;
      }
  
      public void PrepareNextDay()
      {
          int test = int.parse(&quot;error&quot;);
      }
  }
  </code></pre>