为异步操作设置超时时间

9 浏览
0 Comments

为异步操作设置超时时间

我想要等待一个Task完成,但有一些特殊规则:

如果在X毫秒后仍未完成,我希望向用户显示一条消息。

如果在Y毫秒后仍未完成,我希望自动请求取消

我可以使用Task.ContinueWith异步等待任务完成(即在任务完成时调度一个操作执行),但无法指定超时时间。

我可以使用Task.Wait同步等待任务完成并设置超时时间,但会阻塞我的线程。

如何异步等待任务完成并设置超时时间?

0