第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號(hào)安全,請(qǐng)及時(shí)綁定郵箱和手機(jī)立即綁定
已解決430363個(gè)問(wèn)題,去搜搜看,總會(huì)有你想問(wèn)的

在.NET中使用后將對(duì)象設(shè)置為Null/Nothing

在.NET中使用后將對(duì)象設(shè)置為Null/Nothing

波斯汪 2019-07-13 10:48:35
在.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è)贊

卡爾是絕對(duì)正確的,沒(méi)有必要在使用后將對(duì)象設(shè)置為空。如果對(duì)象實(shí)現(xiàn)IDisposable,確保你給我打電話(huà)IDisposable.Dispose()當(dāng)您完成了該對(duì)象(包裝在try..finally,或者,using()街區(qū))。但即使你不記得給我打電話(huà)Dispose(),對(duì)象上的finaliser方法應(yīng)該調(diào)用Dispose()為了你。

我認(rèn)為這是一種很好的治療:

挖掘IDisposable

而這個(gè)

理解IDisposable

嘗試猜測(cè)GC及其管理策略沒(méi)有任何意義,因?yàn)樗亲哉{(diào)優(yōu)和不透明的。關(guān)于與杰弗里·里希特(JeffreyRichter)在Dot Net Rocks上的內(nèi)部工作,大家進(jìn)行了很好的討論關(guān)于Windows內(nèi)存模型的JeffreyRichter里奇特的書(shū)CLR通過(guò)C#第20章有一個(gè)很好的處理方法:


查看完整回答
反對(duì) 回復(fù) 2019-07-13
  • 3 回答
  • 0 關(guān)注
  • 749 瀏覽

添加回答

舉報(bào)

0/150
提交
取消
微信客服

購(gòu)課補(bǔ)貼
聯(lián)系客服咨詢(xún)優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號(hào)

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號(hào)