使用垃圾收集器無法清理某些資源有什麼辦法,我們可以告訴垃圾收集器在點網不清理某些資源。我的意思是我需要某些託管資源是乾淨的,而且肯定不是。我沒有任何實際的情況。但只是想知道這是否可能。不要在點網
謝謝。
使用垃圾收集器無法清理某些資源有什麼辦法,我們可以告訴垃圾收集器在點網不清理某些資源。我的意思是我需要某些託管資源是乾淨的,而且肯定不是。我沒有任何實際的情況。但只是想知道這是否可能。不要在點網
謝謝。
如果你的對象仍然被引用它不會被收集。否則,你可以告訴垃圾收集器,以保持對象活着的GC.KeepAlive()
方法。
參考指定的對象,這使得它不符合爲從當前例程其中 此方法被稱爲點的開始垃圾 集合。
除了簡單地將對象的引用存儲在靜態變量中,您始終可以使用GCHandle添加引用。使用它的Alloc()方法。
但是這是一個有點雞和蛋的問題的,如果你要釋放的引用,那麼你需要存儲的GCHandle的地方,所以你可以調用它的免費()方法。這確實是只有在互操作場景中的非託管代碼間接引用的對象,通常是通過一個委託實用。 GC不能看到這樣的引用,以便明確一個必須被創造,是的GCHandle好了點。否則,我可以考慮問這個問題的唯一原因,這確實需要實際使用。
通過保持對它的引用? – CodeCaster