title: Are co-routine callbacks thread-safe?
body: <h1>Context:</h1>
  
  <p><em>Unity Co-routines are not multi-threaded according to this <a href="https://support.unity3d.com/hc/en-us/articles/208707516-Why-should-I-use-Threads-instead-of-Coroutines-" rel="nofollow noreferrer">Article</a>. Therefore, if coroutine callbacks are accessing a global variable, I would assume there will not be thread conflicts.</em></p>
  
  <h1>Example:</h1>
  
  <pre><code>//Declaration
  private IEnumerator Resolve(WWW request, Action&lt;WWW&gt; callback)
  {
      while (!request.isDone)
      {
          yield return null;
      }
  
      callback(request);
  }
  
  //Invocation - called constantly
  StartCoroutine(Resolve(request, request =&gt; {GlobalVar = request.text;}));
  </code></pre>
  
  <p><em>Can someone who has experienced this confirm that coroutines are indeed synchronous or <code>GlobalVar</code> is Thread-Safe?</em></p>