在.NET中使用后將對(duì)象設(shè)置為Null/Nothing是否應(yīng)該將所有對(duì)象設(shè)置為null (Nothing(在VB.NET中)一旦你完成了它們?我理解在.NET中,必須處理實(shí)現(xiàn)IDisposable接口來(lái)釋放某些資源,盡管對(duì)象在被釋放后仍然可以是一些東西(因此,isDisposed屬性),所以我假設(shè)它仍然可以駐留在內(nèi)存中,或者至少部分駐留在內(nèi)存中?我還知道,當(dāng)一個(gè)對(duì)象超出作用域時(shí),它就會(huì)被標(biāo)記為收集,為垃圾收集器的下一次傳遞做好準(zhǔn)備(盡管這可能需要時(shí)間)。因此,考慮到這一點(diǎn),我們將把它設(shè)置為null加快系統(tǒng)釋放內(nèi)存,因?yàn)樗恍枰?jì)算出它不再在范圍內(nèi),它們是否有任何壞的副作用?MSDN文章從未在示例中這樣做,目前我這樣做是因?yàn)槲铱床坏剿奈:?。然而,我遇到了各種各樣的意見(jiàn),所以任何評(píng)論都是有用的。
3 回答

慕桂英546537
TA貢獻(xiàn)1848條經(jīng)驗(yàn) 獲得超10個(gè)贊
IDisposable
IDisposable.Dispose()
try
..finally
using()
Dispose()
Dispose()
- 3 回答
- 0 關(guān)注
- 749 瀏覽
添加回答
舉報(bào)
0/150
提交
取消