COM對象通常具有確定性破壞:當最後一個引用被釋放時,它們被釋放。C#+ COM Interop,確定性發佈
在C#中如何處理?COM Interop?這些類沒有實現IDisposable
,所以我看不到觸發顯式IUnknown :: Release的方法。
一個臨時測試表明,懶惰地收集未引用的COM對象(即垃圾收集器正在觸發釋放)。我應該怎樣做OCM對象,需要進行積極釋放? (例如擁有大量或共享的關鍵資源)?
原始問題:我們有一個C#應用程序大量使用COM庫,並且它像瘋了一樣泄漏。看來問題出在C++和C#代碼之間(我們可以同時訪問這兩個代碼),但我們不能確定它。
+1,因爲這救了我的命不止一次。 – OregonGhost 2009-06-04 08:18:25