CriticalHandle.Dispose メソッド

定義

リソースを解放するためのハンドルをマークします。

オーバーロード

Dispose()

CriticalHandle によって使用されているすべてのリソースを解放します。

Dispose(Boolean)

通常の破棄操作を実行するかどうかを指定して、CriticalHandle クラスによって使用されているアンマネージ リソースを解放します。

Dispose()

CriticalHandle によって使用されているすべてのリソースを解放します。

public:
 virtual void Dispose();
public void Dispose ();
abstract member Dispose : unit -> unit
override this.Dispose : unit -> unit
Public Sub Dispose ()

実装

注釈

メソッドまたは Dispose メソッドをClose呼び出すと、リソースを解放できます。 クラスとは異なり、他の SafeHandle スレッドがこのハンドルを使用していることを示す参照カウントがないため、これは常に直ちに発生します。 そのため、同期メカニズムを使用して、 メソッドを呼び出しても安全であることを確認する Dispose 必要があります。 クラスを CriticalHandle 使用するほとんどのクラスではファイナライザーを提供する必要はありませんが、これは必要になることがあります (たとえば、ファイル バッファーをフラッシュしたり、データをメモリに書き戻したりするため)。 この場合、 クラスは、クリティカル ファイナライザーを実行する前に実行することが保証されるファイナライザーを CriticalHandle 提供できます。

オブジェクトの Close 使用が完了したら、 メソッドまたは Dispose メソッドを CriticalHandle 呼び出します。 メソッドは Close 、オブジェクトを CriticalHandle 使用できない状態のままにします。

メモ オブジェクトへの最後の参照を Close 解放する前に、 メソッドまたは Dispose メソッドを常に CriticalHandle 呼び出してください。 そうしないと、ガベージ コレクターが CriticalHandle オブジェクトの Finalize メソッドを呼び出すまで、使用されているリソースは解放されません。

適用対象

Dispose(Boolean)

通常の破棄操作を実行するかどうかを指定して、CriticalHandle クラスによって使用されているアンマネージ リソースを解放します。

protected:
 virtual void Dispose(bool disposing);
[System.Security.SecurityCritical]
protected virtual void Dispose (bool disposing);
protected virtual void Dispose (bool disposing);
[<System.Security.SecurityCritical>]
abstract member Dispose : bool -> unit
override this.Dispose : bool -> unit
abstract member Dispose : bool -> unit
override this.Dispose : bool -> unit
Protected Overridable Sub Dispose (disposing As Boolean)

パラメーター

disposing
Boolean

通常の破棄操作を実行する場合は true。ハンドルを終了する場合は false

属性

注釈

パラメーターを に設定falseして メソッドをDispose明示的にdisposing呼び出さないでください。

適用対象