0
我在C#中設計了一個Windows服務,它持續運行併產生三個線程。 第一個線程每15秒運行一次。第二個線程每分鐘運行一次。 而且thirs只運行一次。Windows服務停止的原因
我的問題是,這個Windows服務以某種方式只是在幾天後停止。停止當天在事件日誌中沒有任何記錄,並且它沒有在日誌文件中寫入任何內容。
我想知道什麼是Windows服務突然停止的各種原因。 並且此服務不在我的DEV框中,它位於QA服務器上。
希望它有道理!
這是正確的。每個線程*必須*有一個try/catch塊來捕獲任何'Exception',並優雅地處理失敗(如果沒有其他適用的話,則記錄到事件日誌是一個很好的解決方案)。否則,任何線程中的未處理異常將會終止整個服務。 – 2009-10-19 22:55:03
如果您沒有使用failstop日誌記錄(即,日誌記錄到事件日誌可能會引發權限),請確保您的錯誤處理代碼也具有try/catch,否則日誌失敗也可能會導致此過程失敗。 – nitzmahone 2009-10-19 23:04:57
@Daniel Pryden:線程中的異常是否會被AppDomain.UnhandledException處理程序捕獲?或者這不是一個可靠的方法? – 2009-10-19 23:17:41