Polly's CircuitBreakerAsync does not retry if exception occur
<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>