按ID结束线程

时间:2011-07-10 17:37:04

标签: c#

我正在尝试处理一些线程。我看到可以从线程中获取唯一的ID或设置线程名称。但是如何通过他的ID结束/中止线程呢?我不相信.NET有他自己的能力做到这一点吗?也许是Win32-API?

1 个答案:

答案 0 :(得分:2)

您可以使用Process.GetCurrentProcess().Threads获取当前进程的所有操作系统线程列表(由the ProcessThread class表示),但不能以这种方式中止它们。

另一方面,您可以中止托管线程(由the Thread class表示),但似乎没有办法列出所有线程(除非使用非托管调试API)。

你可以用它来存储你在列表中创建的所有线程,当你想要中止其中一个时,使用列表来查找它。

但是中止线程是一件非常糟糕的事情,如果可能的话,你不应该这样做。可能有更好的方法,你究竟想做什么?