如何创建任务<>我可以手动完成

Geo*_*uer 16 c# task-parallel-library

在单元测试组件时,我需要验证组件如何对在不同时间完成的任务做出反应.

我如何创建一个Task<>我可以随意解决的问题?

Ani*_*Ani 33

您可以使用a TaskCompletionSource创建完全"手动"任务.

表示未委托给委托的Task的生产者端,通过Task属性提供对使用者端的访问.

将完成源的Task属性分发给消费者,并随意调用SetResult它(完成任务).请注意,你也有SetCanceledSetException分别代表取消和失败.