如何在C#中使用Task.Delay()

  • 本文关键字:Task Delay c#
  • 更新时间 :
  • 英文 :


我是C#的新手,我想在代码中尝试Task.Delay(),但我遇到了一些错误。

这是我的代码:

static public void Main(string[] args)
{
Delay();
}
static async Task Delay()
{
for (int i = 0; i < 5; i++)
{
Console.WriteLine(i);
await Task.Delay(1000);
}
}

这是我得到的错误:

在调用完成之前,不等待该语句,并继续执行当前方法。考虑使用"等待"运算符或调用"等待"方法

它不会每秒打印每个数字,也许我做得不对?

编译器警告您正在调用一个async方法,但您现在正在使用await,因此要对返回的Task执行任何操作。

使您的Main方法asyncawait调用Delay:

static public async Task Main(string[] args)
{
await Delay();
}
static async Task Delay()
{
for (int i = 0; i < 5; i++)
{
Console.WriteLine(i);
await Task.Delay(1000);
}
}

最新更新