Stream.Dispose 方法
定義
重要
部分資訊涉及發行前產品,在發行之前可能會有大幅修改。 Microsoft 對此處提供的資訊,不做任何明確或隱含的瑕疵擔保。
釋放由 Stream 物件使用的所有資源。
多載
Dispose() |
釋放 Stream 所使用的所有資源。 |
Dispose(Boolean) |
釋放 Stream 所使用的 Unmanaged 資源,並選擇性地釋放 Managed 資源。 |
Dispose()
釋放 Stream 所使用的所有資源。
public:
virtual void Dispose();
public void Dispose ();
abstract member Dispose : unit -> unit
override this.Dispose : unit -> unit
Public Sub Dispose ()
實作
備註
這個方法會藉由將任何變更寫入至備份存放區,並關閉串流以釋出資源,來處置資料流程。
呼叫可讓用來重新配置的資源,以 Dispose
Stream 供其他用途使用。 如需的詳細資訊 Dispose
,請參閱 清除非受控資源。
給繼承者的注意事項
將資料流程物件的所有清除邏輯放入 Dispose(Boolean) 。 請勿覆寫 Close() 。
請注意,基於回溯相容性需求,這個方法的執行方式與處置模式的建議指引不同。 這個方法會呼叫 Close() ,然後呼叫 Dispose(Boolean) 。
適用於
Dispose(Boolean)
釋放 Stream 所使用的 Unmanaged 資源,並選擇性地釋放 Managed 資源。
protected:
virtual void Dispose(bool disposing);
protected virtual void Dispose (bool disposing);
abstract member Dispose : bool -> unit
override this.Dispose : bool -> unit
Protected Overridable Sub Dispose (disposing As Boolean)
參數
- disposing
- Boolean
true
表示釋放 Managed 和 Unmanaged 資源,false
則表示只釋放 Unmanaged 資源。
備註
您應該指定的來釋放所有 true
資源 disposing
。 當 disposing
為時 true
,資料流程也可以確保資料會排清到基礎緩衝區,並存取其他可終結物件。 從完成項呼叫時,可能不會發生這種情況,因為在完成項之間沒有順序。
如果您的資料流程使用作業系統控制碼與其來源進行通訊,請考慮使用的子類別做 SafeHandle 為此用途。
公用方法和方法會呼叫這個方法 Dispose Finalize 。 DisposeDispose使用設定為的參數叫用受保護的方法 disposing
true
。 Finalize 以 Dispose 設定為的叫用 disposing
false
。
給繼承者的注意事項
在衍生類別中,請勿覆寫 Close() 方法,而是將所有資料流程清除邏輯放入方法中 Dispose(Boolean) 。
Dispose() 可以被其他物件呼叫多次。 覆寫 Dispose(Boolean) 時,請小心不要參考到先前已在對 Dispose() 的早期呼叫中被處置 (Dispose) 的物件。 如需如何執行的詳細資訊 Dispose(Boolean) ,請參閱實 處置方法。
如需和的詳細資訊 Dispose() Finalize() ,請參閱 清除非受控資源。