Semaphore Wait vs WaitAsync in an async method : <p>I'm trying to find out what is the difference between the SemaphoreSlim use of Wait and WaitAsync, used in this kind of context:</p>

<pre><code>private SemaphoreSlim semaphore = new SemaphoreSlim(1);
public async Task&lt;string&gt; Get()
{
   // What's the difference between using Wait and WaitAsync here?
   this.semaphore.Wait(); // await this.semaphore.WaitAsync()

   string result;
   try {
     result = this.GetStringAsync();
   }
   finally {
     this.semaphore.Release();
   }

   return result;
}
</code></pre>
