我知道有很多关于这个的问题。我尝试了它们,但没有得到任何结果。
我在第一次运行时创建了一个线程,当我尝试关闭表单时,表单关闭但应用程序(线程)仍在运行。
我不在乎线程会发生什么。我只想在用户单击 X 按钮时关闭整个应用程序。我试过thread_name.Abort();
但没有任何反应。
我知道有很多关于这个的问题。我尝试了它们,但没有得到任何结果。
我在第一次运行时创建了一个线程,当我尝试关闭表单时,表单关闭但应用程序(线程)仍在运行。
我不在乎线程会发生什么。我只想在用户单击 X 按钮时关闭整个应用程序。我试过thread_name.Abort();
但没有任何反应。
在没有代码的情况下,完整的答案很棘手。
我怀疑最简单的解决方案可能是将 Thread 的IsBackground属性设置为 true。
从文档:
线程要么是后台线程,要么是前台线程。后台线程与前台线程相同,只是后台线程不会阻止进程终止
尝试在创建线程时将Thread.IsBackground设置为。true
如果后台线程正在运行,它们不会阻止进程终止。
不完全是你问的我知道,但 .NET 4.0 中的任务并行库以相当明智的方式支持取消。在您的情况下它可能可行,也可能不可行,但可以在此处获得更多详细信息
http://msdn.microsoft.com/en-us/library/dd460717(v=vs.100).aspx