Ale*_*lex 14 .net c# multithreading winforms
我正在编写一个GUI应用程序.
应用程序在其生命周期内打开多个线程.其中一个线程正在处理可能来自其他应用程序的事件,因此它会在一段时间(真实)循环中等待从未终止的事件.
用户可以在任何时候关闭应用程序.我想关闭主应用程序打开的所有线程.
我正在使用Process.GetCurrentProcess().Kill(); 目前处理这个问题.
这是一个好的解决方案吗?如果没有,为什么以及什么是处理这个问题的正确方法,如何关闭主应用程序打开的所有线程?
adr*_*nks 23
如果您将新线程创建为后台线程(通过在启动它们之前设置IsBackground),它们将在主线程(应用程序线程)终止时自动停止.
(来自MSDN):
线程是后台线程或前台线程.后台线程与前台线程相同,除了后台线程不会阻止进程终止.一旦属于进程的所有前台线程终止,公共语言运行库就结束该进程.任何剩余的后台线程都会停止并且不会完成.
归档时间: |
|
查看次数: |
8315 次 |
最近记录: |