[英]System.ObjectDisposedException
我正在運行一些Windows應用程序,它工作了幾天然后停止工作沒有錯誤。 現在我在事件查看器中發現了這個錯誤。 也許有人知道什么會導致這個錯誤?
事件類型:錯誤
事件源:.NET Runtime 2.0錯誤報告事件
類別:無
事件ID:5000
日期:2010年10月30日
時間:21:58:57
用戶:N / A.
電腦:SERVER-PROD
描述:EventType clr20r3,P1 program.exe,P2 1.0.0.0,P3 4cca7ed1,P4 mscorlib,P5 2.0.0.0,P6 4be90358,P7 1164,P8 0,P9 system.objectdisposedexception,P10 NIL。
ObjectDisposedException是:
在已處置對象上執行操作時引發的異常。 ( 來源 )
換句話說,如果實現了實現IDisposable接口的類的實例 - 通過調用Dispose()
顯式地或者隱式地(例如,如果它出現在using
語句中或其他方式) - 任何嘗試調用方法的方法該對象將引發上述異常。
與大多數調試問題一樣,如果不實際查看代碼並在調試器中運行它,很難說是什么導致了您的問題。 你說在運行幾天后程序崩潰了ObjectDisposedException。 根據我的經驗,這通常意味着兩件事之一:
我的建議是在調試器中啟動程序,並保持運行直到拋出異常。 然后你可以回到這里並向我們提供相關代碼,堆棧跟蹤,調試輸出等。
有東西正在訪問已被處置的對象。 如果您在表單上有多線程,通常會發生這種情況。 啟動backgroundworker / thread / timer,然后處理表單。 當backgroundworker / thread / timer嘗試以某種方式更新表單時,您會收到此異常。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.