【发布时间】:2018-10-11 15:34:19
【问题描述】:
我应该在下面的代码中使用taskThatReturns.Wait() 还是可以省略它,因为根据我的理解taskThatReturns.Result 无论如何都会等待。
Task<string> taskThatReturns = new Task<string>(MethodThatReturns);
taskThatReturns.Start();
taskThatReturns.Wait();
Console.WriteLine(taskThatReturns.Result);
【问题讨论】:
-
你根本不应该使用
Task.Start。你应该使用var result=await Task.Run(MethodThatReturns);。创建冷任务很少有任何正当理由 -
你为什么认为你应该打电话给
Wait? -
我在训练中见过
Wait方法 -
KISS 是可取的:Console.WriteLine(MethodThatReturns());
标签: task console-application wait c#-2.0