1.暂停一段时间
public static Task ShortDelay(TimeSpan delay)
{
await Task.Delay(delay);
Console.WriteLine(string.Format("延迟{0}", delay));
}
解析:
- 异步编程使用async与await关键字,搭配返回Task或其泛型
- async的存在是为了代码中await的生效
- 如果没有返回值,更推荐写为Task,而不是void
- Task.Delay()是异步编程提供的延迟方法,如果你想延迟两秒,可以Task.Delay(2000);
- 当Task.Delay(delay);执行后,会异步延迟delay的时间,在延迟的同时,执行下方的Console
- 当这行代码前+await,会等待异步延迟的执行结束后,执行下方的Console
2.实现简单的指数退避策略
pulic static async Task To