7
A
回答
4
並非嚴格如此 - 只會在異常未處理時導致問題。
4
如果該異常未被捕獲,並且氣泡備份到OnStart()方法,則會使服務崩潰。你通常會看到在Windows事件日誌類似於以下的消息:
「的服務名服務意外終止它已完成此x時間(s)
2
如果你在拋出異常。如果你不想在發生異常時停止這個服務,那麼你需要爲你的服務提供一個服務。OnStart()方法需要一個try/catch。處理它(記錄它,繼續前進,或者其他)
我的首選項是處理預期的異常,並且有意外的異常導致服務停止或至少自動停止/重啓。意外的事情發生,你的服務將以未知的狀態運行,誰知道它會做什麼。
3
我們遇到了子線程上未處理異常的問題,導致服務停止,但未提供任何有關導致異常的信息。我們使用這種方法來找出異常的來源。
您可以將一個Handler放入該服務,以捕獲所有未處理的異常(包括該服務的所有子線程)。在VB.NET中,您將需要爲AppDomain.CurrentDomain.UnhandledException添加一個處理程序。它可能類似於C#。然後它會捕獲任何通過onStart冒出的東西。您可以選擇在那裏使用它,或允許它從那裏崩潰服務。
相關問題
- 1. Web服務拋出異常
- 2. 命名管道在Windows服務中拋出異常
- 3. 在WCF服務拋出異常拋出一個
- 4. 在Android服務拋出異常運行的Webservice方法異常
- 5. Restful web服務拋出servlet.init()異常
- 6. Web服務類拋出異常
- 7. 訪問控制服務拋出異常
- 8. 向wcf服務拋出異常
- 9. 服務層應該拋出異常嗎?
- 10. 春天web服務拋出異常
- 11. Windows服務異常
- 12. 在Java中拋出自定義異常與在異常中拋出異常
- 13. 魔術異常拋出拋出異常
- 14. 拋出異常拋出異常
- 15. Grails - 爲什麼在控制器中拋出的異常暫停執行,但在服務中拋出異常呢
- 16. 在C++中拋出異常異常
- 17. 在Java中拋出異常的方法拋出異常
- 18. windows服務拋出錯誤
- 19. 在HttpRequest.GetResponse中拋出異常
- 20. 在Java中拋出異常
- 21. 在pimcore中拋出異常
- 22. 在Java中拋出異常
- 23. JNDI在服務器初始化函數中拋出Servlet異常
- 24. 如何不在ASP.NET Web Api服務中拋出異常?
- 25. 在Web服務中使用硒會拋出java.lang.NoClassDefFoundError異常
- 26. Ldap gem在Rails中拋出與服務器異常的連接
- 27. Web服務在POST請求中拋出錯誤/異常
- 28. 在javascript中捕獲從ac#web服務拋出的異常
- 29. InstallUtil在嘗試在Windows 2012服務器上安裝Windows服務時拋出異常
- 30. 在任務延續中拋出異常處理異常處理
我已經包裝了在try/catch中計時器運行時運行的整個方法,但沒有得到任何錯誤,但我的服務正在干擾! – Blankman 2009-01-02 19:42:44
「干擾」是什麼意思? – bobwienholt 2009-01-02 19:45:39