title: Asynchronous method that does nothing
body: <p>I have an interface <code>IAnimation</code> which exposes a method <code>BeginAsync()</code>. That method should start the animation and return when it is completed.</p>
  
  <p>What I would like to do is implement a <code>null</code> animation class <code>NoAnimation</code> that just returns when it executes <code>BeginAsync()</code>.</p>
  
  <p>Is this the right implementation?</p>
  
  <pre><code>public async Task BeginAsync()
  {
      await Task.Run(() =&gt; { });
  }
  </code></pre>
  
  <p>I suspect that there is a more elegant approach than this. I also considered 
  creating an empty method. But that gives me a warning which I don't like either.</p>