2011-05-11 48 views
0

可能重複:
Service runs then dies.服務運行然後死

你好,

我運行Windows 7專業版64位。我使用.NET 4框架在C#中編寫了一項服務。它安裝正確並開始運行。我知道它運行是因爲它將一些輸出寫入日誌文件。但是,幾秒鐘後它就會死亡。當我使用Visual Studio 2010 Pro來運行相同的代碼而不是服務時,它永遠不會死亡。所以,我明顯的問題是關於調試這個適當的方法,因爲我無法弄清楚爲什麼它應該作爲服務而死,而不是作爲非服務而死。我已經在代碼中的幾個地方寫入了日誌文件,但它似乎每次都會在不同的地方死去。該應用程序有3個線程。歡迎任何建議。

感謝, 雷

回答

0

我懷疑某種線程不安全的代碼。這是不是線程安全的典型代碼症狀。在某些時候,兩個或更多的線程會相互碰撞(比如當一個迭代一個列表,另一個修改該列表時)。

當您在VS中進行調試時,代碼運行速度會明顯變慢,因此線程崩潰的可能性較低/耗時較長。