故意中止任务

时间:2015-09-15 10:42:21

标签: c# multithreading task

假设我有一个非常长的运行操作,它不包含任何循环,我的意思是操作的性质是长时间运行而没有任何递归和重复。在这种情况下,如果我使用CancellationToken类型为"安全"抛出取消例外或Boolean标志。取消任务,永远无法到达令牌或标志。

现在唯一的目标是打破正在运行的任务,无论中止是好还是坏。当使用线程时,存在中止方法(我不想讨论它的缺点,因为我已经意识到它),但是当涉及到任务类型时,我不会#&## 39;在那里看到它。假设我的Task必须返回一个值,那么线程就没有问题了。

实施此操作的最安全,最有效的方法是什么。

1 个答案:

答案 0 :(得分:-1)

你可以杀死这个过程,

process.Kill();

无论文档说什么,都不会承诺取消任务或中止任务。

您可以在线程中启动任务,然后使用thread.abort();

我担心你在这里没有太多选择。更确定的是,你需要提供背景。

enter image description here