0

可能重复:
在 .NET 中获取当前活动的托管线程列表?

在 ac# 方法中,我使用以下构造同时启动多个线程:

new Thread(() =>
{
    Application.Run(...);
}).Start();

之后如何获取所有活动线程的列表并将它们全部杀死,不包括主线程?

4

1 回答 1

0

如果您真的想杀死线程,请从 new Thread() 捕获返回值并调用 myThread.Abort()

Thread myThread = new Thread(() =>
{
    Application.Run(...);
}).Start();

// ...

myThread.Abort();

http://msdn.microsoft.com/en-us/library/system.threading.thread.abort.aspx

然而,最好以合作方式结束线程。

如果您不想捕获线程并自己跟踪它,您可能必须使用 Profiling/Debugging API 来枚举进程中的线程

如何枚举 C# 中的所有托管线程?

要了解有关协作线程以及一般线程的更多信息,我建议阅读出色的文章

http://www.albahari.com/threading/

于 2013-01-16T22:10:46.740 回答