title: Polly's CircuitBreakerAsync does not retry if exception occur
body: <p>I am using Polly library for transient fault handling. For synchronous operations Polly circuit breaker policy works fine but when I created its async version it does not retries the execution. Kindly suggest :</p>
  <p><strong>Asynchronous method</strong>:</p>
  <pre><code>private async static Task HelloWorld()
      {
          if (DateTime.Now &lt; programStartTime.AddSeconds(10))
          {
              Console.WriteLine(&quot;Task Failed.&quot;);
              throw new TimeoutException();
          }
          await Task.Delay(TimeSpan.FromSeconds(1));
          Console.WriteLine(&quot;Task Completed.&quot;);
      }
  </code></pre>
  <p><strong>Polly circuit breaker async policy:</strong></p>
  <pre><code>private static void AsyncDemo3(Func&lt;Task&gt; action)
      {
          programStartTime = DateTime.Now;
  
          AsyncPolicy policy = Policy
              .Handle&lt;TimeoutException&gt;()
              .CircuitBreakerAsync(3, TimeSpan.FromSeconds(2));
          try
          {
              var a = policy.ExecuteAndCaptureAsync(action, true).GetAwaiter().GetResult();
          }
          catch (AggregateException ex)
          {
              Console.WriteLine(&quot;Exception: &quot; + ex.Message);
          }
          catch (Exception ex)
          {
              Console.WriteLine(&quot;Exception: &quot; + ex.Message);
          }
      }
  </code></pre>
  <p><strong>Executing the Polly circuit breaker policy :</strong></p>
  <pre><code>AsyncDemo3(HelloWorld);
  </code></pre>
  <p>Kindly help the find and resolve the problem.</p>