提问者:小点点

C#异步递归函数工作不正常?[副本]


这是我的代码:

  class Program
{
    static void Main(string[] args)
    {
        update();
    }

    static async void update()
    {
        await Task.Delay(100);
        Console.WriteLine("X");
        update();
    }
}

Console从来不输出任何文本,我也不知道为什么。我做错了什么?


共1个答案

匿名用户

您的方法不是,因此它不会等待您的方法。另外,方法应该返回一个,以便方法可以等待它。

static async Task Main(string[] args)
{
    await update();
}

static async Task update()
{
    await Task.Delay(100);
    Console.WriteLine("X");
    await update();
}

相关问题