什么時(shí)候在類而不是析構(gòu)函數(shù)上實(shí)現(xiàn)IDispose?我讀了這篇文章,但我仍然沒(méi)有抓住重點(diǎn)。我的假設(shè)是,如果我在對(duì)象上實(shí)現(xiàn)IDispose,則可以顯式地“銷毀”該對(duì)象,而不是等待垃圾回收器執(zhí)行此操作。這個(gè)對(duì)嗎?這是否意味著我應(yīng)該始終在對(duì)象上顯式調(diào)用Dispose?常見的例子有哪些?
3 回答

有只小跳蛙
TA貢獻(xiàn)1824條經(jīng)驗(yàn) 獲得超8個(gè)贊
在MSDN上有一個(gè)很好的描述:
此接口的主要用途是釋放非托管資源。當(dāng)不再使用托管對(duì)象時(shí),垃圾收集器會(huì)自動(dòng)釋放分配給該對(duì)象的內(nèi)存。但是,無(wú)法預(yù)測(cè)何時(shí)會(huì)發(fā)生垃圾回收。此外,垃圾收集器不了解 諸如窗口句柄或打開的文件和流之類的非托管資源。
使用此接口的Dispose方法 與垃圾回收器一起顯式釋放非托管資源。當(dāng)不再需要該對(duì)象時(shí),該對(duì)象的 使用者可以調(diào)用此方法。
- 3 回答
- 0 關(guān)注
- 663 瀏覽
添加回答
舉報(bào)
0/150
提交
取消