Task.Delay() 和 Thread.Sleep() 区别

一、Thread.Sleep 是同步延迟,Task.Delay异步延迟。异步

二、Thread.Sleep 会阻塞线程,Task.Delay不会。线程

三、Thread.Sleep不能取消,Task.Delay能够。资源

4. Task.Delay() 比 Thread.Sleep() 消耗更多的资源,可是Task.Delay()可用于为方法返回Task类型;或者根据CancellationToken取消标记动态取消等待同步

5. Task.Delay() 实质建立一个运行给定时间的任务, Thread.Sleep() 使当前线程休眠给定时间。io

相关文章
相关标签/搜索