如何使用c#杀死除主线程之外的所有活动线程?

如何使用c#杀死除主线程之外的所有活动线程?,c#,C#,可能重复: 在c#方法中,我使用以下构造同时启动几个线程: new Thread(() => { Application.Run(...); }).Start(); 如何获取所有活动线程的列表,然后将其全部杀死(主线程除外?如果确实要杀死该线程,请从new thread()捕获返回值并调用myThread.Abort() 但是,最好以协作方式结束线程 如果您不想捕获线程并自己跟踪它,则可能必须使用分析/调试API来枚举进程中的线程 要了解更多关于协作线程和一般线程的信息,我

可能重复:

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

new Thread(() =>
{
    Application.Run(...);
}).Start();
如何获取所有活动线程的列表,然后将其全部杀死(主线程除外?

如果确实要杀死该线程,请从new thread()捕获返回值并调用myThread.Abort()

但是,最好以协作方式结束线程

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

要了解更多关于协作线程和一般线程的信息,我建议阅读这篇优秀的文章


这样你就可以处理REST了。这是真正的代码味道……你确定要有多个UI线程吗?@HansPassant那么我是否需要在编辑后删除我的评论?:)不确定,这是建设性的,不是有趣的;)这帮了大忙,谢谢。我想这样做,但因为我的声誉分数低于要求的15分,所以我不能给任何分数。
Thread myThread = new Thread(() =>
{
    Application.Run(...);
}).Start();

// ...

myThread.Abort();