回答
這是一個時機的經典例子。
如果它在調試器中工作,那麼這意味着你必須重新分解你的代碼來處理這個問題。
現在如果你是一個服務器套接字,它接收來自客戶端的連接並嘗試爲每個連接產生一個線程,你可能不得不考慮使用select()來管理一個線程中的連接。
通常情況下,計時問題。是否有涉及的線程?如果是C/C++,那麼可能會有很多原因,因爲內存管理錯誤可能會如何表現。
在編譯器下運行時,與獨立運行相比,您可能有變量的默認值不同。如果涉及到線程,競爭條件可能是另一個想法。
如果您通過malloc或new分配RAM,那麼在使用之前請確保內存已正確初始化。
我會說計時問題也附加調試器會稍微放慢代碼,這可能意味着競爭條件不會發生。
調試它,試圖將一些日誌代碼添加到您的應用程序,我個人使用log4net
你不應該有和使用malloc的問題,因爲你是在C#編碼等。
如果您正在運行Web應用程序,那麼VS中的cassini webserver和您正在部署的cassini webserver可能也有所不同。
我們實際上遇到過類似的問題。時機是其中的關鍵部分。以及向代碼中拋出禁止代碼(主要區別在於調試代碼)。
使用套接字編程,看起來像使用VisualStudio.Net進行調試就像進行額外的Application.DoEvents()調用一樣。除非我們通過調用Application.DoEvents()來允許組件呼吸(例如處理它自己的事件),否則我們發現我們有東西會失敗(非調試)。
當Visual Studio附加到您的應用程序時,CLR和JIT具有微妙的運行時間差異以啓用調試。例如垃圾收集是不同的。
http://stupiddumbguy.blogspot.com/2008/05/net-garbage-collection-behavior-for.html
這可能是因爲你看的副作用在調試器的性能。雖然這裏的其他答案更可能...
- 1. 爲什麼在調試器下,Perl的quotemeta()函數的行爲有所不同?
- 2. 爲什麼在這個例子中線程連接的行爲有所不同?
- 3. 爲什麼當我試圖調試VS 2008應用程序時,VS 2010調試器會彈出?
- 4. 爲什麼在完成連接之後不會調用完成?
- 5. iPhone應用程序在連接到儀器vs無儀器vs模擬器的設備上的行爲不同
- 6. 爲什麼Perl BEGIN塊在調試器中的行爲不同?
- 7. 爲什麼在連接上調用dispose後連接數量不會減少?
- 8. 將應用程序移動到其他服務器時,JSOUP行爲會有所不同。爲什麼404錯誤?
- 9. 爲什麼PDF :: FromHTML在從我的web應用程序調用時行爲有所不同?
- 10. 爲什麼在應用程序處於後臺時不會調用回調? 。
- 11. 爲什麼本機線程在應用程序處於後臺時行爲有所不同?
- 12. == vs .equals - 爲什麼不同的行爲?
- 13. 爲什麼bash的行爲會因爲只改變行的解析器的調用方式而有所不同?
- 14. 爲什麼MonoTouch調試器在一段時間後會斷開連接?
- 15. 爲什麼會話的行爲有所不同?
- 16. 爲什麼我的程序在使用不同的編輯器和編譯器時會有所不同?
- 17. JavaScript:爲什麼警報會使行爲有所不同?
- 18. 測試iOS應用程序時,爲什麼不是所有的應用程序崩潰都會報告?
- 19. 調試vs發佈庫版本與調試/發佈客戶端應用程序具有不同的行爲
- 20. 爲什麼我的Web應用程序在調試運行時不使用Web.Debug.config?
- 21. 爲什麼一個局部變量的地址在執行多次時會有所不同,但在使用GDB進行調試時不會有所不同?
- 22. 爲什麼我不能調試我的asp.net web應用程序
- 23. 爲什麼只有在VS 2008的Web應用程序/站點項目中才會出現Oracle連接錯誤?
- 24. 調試器爲什麼不運行?
- 25. 爲什麼有其他應用程序嘗試連接到我的Azure端口?
- 26. Rails應用程序的行爲不同在Heroku VS發展
- 27. 爲什麼我的應用程序在調用popToRootViewControllerAnimated後死亡?
- 28. 爲什麼HttpContext.Current.Request.AppRelativeCurrentExecutionFilePath在不同的服務器上有所不同?
- 29. OS X/iOS&TCP:爲什麼CFSocketSendData在連接重置後調用時會崩潰應用程序?
- 30. 爲什麼我不能調試MvvmLight Silverlight應用程序
這是一個Heisenbug的例子嗎? http://en.wikipedia.org/wiki/Heisenbug#Heisenbugs – 2008-09-23 12:11:26
沒有它只是我今天遇到的一個應用程序。 – 2008-09-23 12:12:59