【发布时间】:2019-07-10 08:11:22
【问题描述】:
假设,我有一个服务器应用程序。此应用程序在单独的子线程中轮询传入的客户端。此外,还会为每个传入客户端生成子线程,以分别为其请求提供服务。
我想杀死除服务器应用程序的主线程之外的所有线程,例如,通过单击一个按钮。
我该怎么做?
【问题讨论】:
-
通过正确创建线程或根本不创建线程 - 任务更容易使用。当主线程退出时,后台线程将被中止。在所有情况下,与中止操作并留下垃圾相比,优雅地发出终止信号要好得多
-
你为什么要问?我怀疑您创建了很多前台线程并且现在无法关闭它们?您可以通过使用异步编程、任务、通道或数据流块等高级结构而不是原始线程来大大简化您的代码
标签: c# .net multithreading winforms