C#5和异步​​计时器

是否有一个新的Timer API允许我这样做?

await timer.wait(500); 

基本上,要睡眠X ms然后恢复执行其余function

试试用

 await Task.Delay(500); 

我有一个我非常喜欢的帮手,只是为了增加一些可读性:

 public static Task Seconds(this int seconds) { return Task.Delay(new TimeSpan(0,0,seconds)); } 

这允许我使用类似的东西

 await 5.Seconds(); 

您可以轻松地制作类似于毫秒,分钟,小时等的扩展方法。