我创建了一个运行多个后台线程的表单。我添加了另一个处理异常和错误的类(如果有的话)。当代码运行时,如果发生错误应该强制应用程序关闭,我可以使用Application.Exit()
?这是否会杀死后台线程?Application.Exit()是否会终止后台线程?
回答
不,它不会。 Application.Exit()只会强制Windows消息泵发布Quit消息,这将终止您的应用程序的主线程。但是,该进程本身将继续运行,直到后台线程完成。
更新:正如评论者已正确指出,如果您的线程的IsBackground属性设置为True,通过Application.Exit()终止主线程将关闭该过程。
其他前景线程将阻止进程终止,后台线程不会。 – Servy 2012-04-25 20:44:40
你确定吗?我认为背景*线程(即那些与'IsBackground ==真正'不会阻止应用程序终止,并在关机时强制终止。 – CodesInChaos 2012-04-25 20:44:56
谢谢所以当我使用Application.Exit所有后台线程将不必担心。终止 – Mohamed 2012-04-25 23:28:50
编号线程终止是合作的。
- 1. 当Asp.net终止后台线程?
- 2. Java中的子线程是否阻止父线程终止?
- 3. 如何检查线程是否终止?
- 4. 线程不会终止
- 5. mtTkinter不会终止线程
- 6. 线程终止问题(C):最后线程不终止
- 7. 后台进程终止后的通知
- 8. 终止后是否可以中断增强线程?
- 9. 后台进程在其父进程终止时被终止?
- 10. 线程,进程和Application.Exit()
- 11. 是线程终止后在线程中分配的内存吗?
- 12. 程序挂起,线程不会终止
- 13. await在线程池终结并不会终止线程池
- 14. 终止线程
- 15. 终止线程
- 16. 主线程是前台线程还是后台线程?
- 17. AFNetworking是否会自动在后台线程上执行操作?
- 18. c#:如何在dispose()方法中终止后台线程?
- 19. 在主线程或后台线程中是否会调用NSNotificationCenter回调方法?
- 20. 如何防止后台线程中的异常终止应用程序?
- 21. 线程 - 如何通过UI交互来终止工作/后台线程
- 22. 如何确定应用程序是在后台还是终止?
- 23. Java:为什么线程不会终止
- 24. 多线程S3下载不会终止
- 25. 如何在iphone中终止应用程序后运行后台线程?
- 26. System.Threading.Tasks是否能够作为后台线程运行?线程
- 27. ios是否会在特定时间后终止在后台运行的应用程序?
- 28. 终止Java线程
- 29. Java线程终止
- 30. Java - 终止线程
http://stackoverflow.com/questions/3689564/threads-processes-and-application-exit – zimdanen 2012-04-25 20:40:15
你想杀死后台线程吗? – Servy 2012-04-25 20:44:22
另外,你为什么问我们?为什么不运行它并亲自查看。 – Servy 2012-04-25 20:45:34