这是否可以获得当前运行Task
并在其他无法访问Task对象的地方取消它?我们说我在classA
开了一个任务,我想在classB
取消它,无论如何找到当前的任务并取消它?
答案 0 :(得分:4)
不,没有当前Task
的概念。任意运行的任务很多。甚至“跑步”也没有明确定义。是new TaskCompletionSource<object>().Task
正在运行还是不运行?
创建一个可取消的CancellationToken
并将其传递给任务以使其自行取消。将基础CancellationTokenSource
传递给想要取消的代码。