2008年5月15日 星期四

C# 幫你釋放物件資源的 Using 陳述式

http://richielin-programer.blogspot.com/2008/05/c-using.html

在 .NET Framework 中,當我們使用 unmanaged 資源的物件後
必須記得去釋放其資源,以避免程式佔用記憶體或發生不可預期的事情
這些物件通常都會實作 IDisposable 介面,只要呼叫 Dispose 方法即可釋放它的資源
但也得程式設計師使用過後有記得去釋放才行

這時可以使用 Using 陳述式來幫忙了
以下為示範程式碼

Using 區塊包含三個部份: 取得物件使用物件釋放物件
其中在 Using 陳述式最後會徹底絡結一個 Unmanaged 資源
並使得記憶體回收行程 (GC) 將物件變數從系統中移除
讓它所佔用的資源能被其它程式碼使用
事實上 Using 也可以用於巢狀 Using,如上述例子所示
所該物件的資源,僅止於該大括號內範圍區塊內,執行序離開時會自動被釋放回收
而不用手動加上 Dispose 或忘了釋放資源了

0 意見: