netcore Polly.Core

一、安装包

二、编写重试

ResiliencePipeline pipeline = new ResiliencePipelineBuilder()
                .AddRetry(new RetryStrategyOptions
                {
                    MaxRetryAttempts = 2,
                    Delay = TimeSpan.FromSeconds(3),
                    OnRetry = args =>
                    {
                        Console.WriteLine("OnRetry, Attempt: {0}", args.AttemptNumber);
                        return default;
                    }
                })
                .AddTimeout(TimeSpan.FromSeconds(100))
                .Build();

pipeline.ExecuteAsync(static async cancellationToken =>
{
    Console.WriteLine("重试:" + DateTime.Now);
    throw new DivideByZeroException();
}, CancellationToken.None).GetAwaiter().GetResult();

三、演示

netcore Polly.Core_第1张图片

你可能感兴趣的:(ASP.NET,Core,Polly,java,前端,linux)