async/await在控制台应用程序中不起作用

roa*_*242 2 c# task-parallel-library async-await

我对TPL完全是绿色的,并希望在控制台应用程序中执行异步方法.

我的代码:

    static void Main()
    {
        Task<string> t = MainAsync();
        t.Wait();
        Console.ReadLine();
    }

    static async Task<string> MainAsync()
    {
        var result = await (new Task<string>(() => { return "Test"; }));
        return result;

    }
Run Code Online (Sandbox Code Playgroud)

此任务永远运行.为什么?我错过了什么?

EZI*_*EZI 8

你没有开始你的任务.这就是为什么Wait不回归.尝试

var result = await Task.Run<string>(() => { return "Test"; });
Run Code Online (Sandbox Code Playgroud)