我对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;
}
此任务永远运行。为什么?我错过了什么?
答案 0 :(得分:8)
你没有开始你的任务。这就是Wait
不返回的原因。尝试
var result = await Task.Run<string>(() => { return "Test"; });