我目前想實現我的我的一些物體的第一處置,並想知道如果它是一個壞主意,經過每次反射所有屬性,只是將它們設置爲空處置對象?與清理通過反射
Q
與清理通過反射
0
A
回答
1
實施IDisposable
並不意味着你已經將所有字段設置爲null
。當它們不能從根對象到達時,GC會照顧它。
和設置null
不會做任何事情還是物體會在內存中,直至GC聲明它是不具有管理的任何引用。
IMO你不能看到一個全面的答案不止這Proper use of the IDisposable interface
設置爲null有助於只有一個管理參考只剩時,你不需要它,雖然,但你必須保持密封型活着那麼你會設置參考null
。否則,如果封裝類型本身無法訪問,那麼設置null
沒有任何意義。
0
是的,這是一個壞主意。
首先,您的一些屬性可能是實現IDisposable
接口的類,因此您必須首先調用Dispose
方法。
然後,如果你的屬性之一是取決於COM組件或使用一些類,你必須正確地處理它,或者你將結束與內存泄漏
相關問題
- 1. 通過反射
- 2. 通過反射
- 3. 通過反射
- 4. 通過反射
- 5. 通過反射
- 6. 通過反射
- 7. 通過反射
- 8. 通過反射
- 9. 通過反射
- 10. ThrowException通過反射
- 11. 通過C#反射
- 12. .NET通過反射
- 13. 通過.NET反射
- 14. 通過反射使用C#與OpenOffice
- 15. DispatcherUnhandledException與類庫通過反射調用
- 16. 無法通過反射
- 17. NHibernate的,通過反射
- 18. 如何通過反射
- 19. 獲得通過反射
- 20. 的Java通過反射
- 21. 把那通過反射
- 22. 呼叫通過反射
- 23. 如何通過反射
- 24. 動態通過反射
- 25. 創建通過反射
- 26. 通過反射獲取XmlRootAttribute.ElementName
- 27. 無法通過反射
- 28. 無法通過反射
- 29. 訂閱通過反射
- 30. 呼叫通過反射