12

如果我有类似的方法

Task<bool> LongProcessTaskAsync();

返回已启动的任务会是更好的做法吗

return Task<bool>.Factory.StartNew(() => { ... });

要不就return new Task<bool>(() => ...)

就个人而言,我更喜欢第一种方法,但我更愿意与其他 API 和库保持一致。

返回一个未开始的任务是否更合适?

4

2 回答 2

18
于 2012-07-29T07:37:27.210 回答
3

詹姆斯曼宁正确回答。这是另一个角度:为什么有人想要一个未开始的任务?如果他这样做了,他本可以等待调用该方法。他本可以稍后调用它,或者自己将其包裹在 Lazy 或 future 中。几乎没有理由不返回已开始的任务。

于 2012-07-29T20:00:44.340 回答