title: .Net Core Async Await - Not functioning as expected
body: <p>I'm testing out the impact of using async and await as I understand it is supposedly able to run multiple calls by not blocking a thread. </p>
  
  <p>I used this <a href="https://exceptionnotfound.net/using-async-and-await-in-asp-net-what-do-these-keywords-mean/" rel="nofollow noreferrer">link</a> as my reference</p>
  
  <p>The following is my code on the controller :</p>
  
  <pre><code>[Route("api/email")]
  public class EmailController : Controller
  {
      private ContentManagement _contentManagement;
      public EmailController(ContentManagement contentManagement)
      {
          _contentManagement = contentManagement;
      }
  
      [HttpGet("async")]
      public async Task&lt;IActionResult&gt; GetAsync()
      {
          DateTime cur = DateTime.Now;
          var name = await _contentManagement.GetNameAsync();
  
          return Ok($"Value   : {name} \nStarted  : {cur.TimeOfDay}\n Ended   : {DateTime.Now.TimeOfDay}");
      }
      [HttpGet("normal")]
      public IActionResult Get()
      {
          DateTime cur = DateTime.Now;
          var name = _contentManagement.GetName();
          return Ok($"Value   : {name} \nStarted  : {cur.TimeOfDay}\n Ended   : {DateTime.Now.TimeOfDay}");
  
      }
  }
  </code></pre>
  
  <p>The contentManagement class is exactly the same as provided in the link above.</p>
  
  <p>I find that when I call the async web apis simultaneously, they perform exactly the same as the sync web api by performing the tasks sequentially.</p>
  
  <p>Here are my results :</p>
  
  <p><a href="https://i.stack.imgur.com/NUaci.png" rel="nofollow noreferrer"><img src="https://i.stack.imgur.com/NUaci.png" alt="enter image description here"></a></p>
  
  <p>Anyone can provide feedback if I'm missing something or did something wrong?</p>
  
  <p>UPDATE:
  - So when I tried it on two devices, one on my computer and another on my phone, it seems that they run simultaneously (regardless if it's an async / await or just a normal sync method); 
  - If it's on the same device, they run sequentially (as shown in the image above)</p>