我創建了一個運行多個後臺線程的表單。我添加了另一個處理異常和錯誤的類(如果有的話)。當代碼運行時,如果發生錯誤應該強制應用程序關閉,我可以使用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. 線程不會終止
- 3. 如何檢查線程是否終止?
- 4. 線程終止問題(C):最後線程不終止
- 5. 後臺進程在其父進程終止時被終止?
- 6. 程序掛起,線程不會終止
- 7. 線程,進程和Application.Exit()
- 8. 終止線程
- 9. 主線程是前臺線程還是後臺線程?
- 10. AFNetworking是否會自動在後臺線程上執行操作?
- 11. c#:如何在dispose()方法中終止後臺線程?
- 12. 如何防止後臺線程中的異常終止應用程序?
- 13. 在主線程或後臺線程中是否會調用NSNotificationCenter回調方法?
- 14. 如何允許後臺進程保持會話終止?
- 15. 線程 - 如何通過UI交互來終止工作/後臺線程
- 16. 如何確定應用程序是在後臺還是終止?
- 17. 多線程S3下載不會終止
- 18. 如何在iphone中終止應用程序後運行後臺線程?
- 19. System.Threading.Tasks是否能夠作爲後臺線程運行?線程
- 20. SlimDX - 終止線程
- 21. Java - 終止線程
- 22. 線程在其父進程停止時是否會停止
- 23. Java終止或終止線程
- 24. Libssh2:防止後臺任務被終止
- 25. 過程是否總是需要終止?
- 26. 停止後臺線程的CFRunLoop
- 27. 如何殺死/停止後臺線程?
- 28. 停止後臺線程的iOS
- 29. 如何停止黑莓後臺線程
- 30. 最終參數的使用是否會阻止類成爲線程安全的?
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