SafeHandle.Dispose SafeHandle.Dispose SafeHandle.Dispose SafeHandle.Dispose Method

定義

SafeHandle クラスによって使用されているリソースを解放します。Releases the resources used by the SafeHandle class.

オーバーロード

Dispose() Dispose() Dispose() Dispose()

SafeHandle クラスによって使用されているすべてのリソースを解放します。Releases all resources used by the SafeHandle class.

Dispose(Boolean) Dispose(Boolean) Dispose(Boolean) Dispose(Boolean)

通常の破棄操作を実行するかどうかを指定して、SafeHandle クラスによって使用されているアンマネージ リソースを解放します。Releases the unmanaged resources used by the SafeHandle class specifying whether to perform a normal dispose operation.

Dispose() Dispose() Dispose() Dispose()

SafeHandle クラスによって使用されているすべてのリソースを解放します。Releases all resources used by the SafeHandle class.

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

実装

注釈

メソッドまたCloseDisposeメソッドを呼び出すと、リソースを解放できます。Calling the Close or Dispose method allows the resources to be freed. 他のスレッドがセーフハンドルの同じインスタンスを使用している場合、この動作はすぐには行われませんが、その場合はすぐに発生します。This might not happen immediately if other threads are using the same instance of the safe handle, but will happen as soon as that is no longer the case. を使用SafeHandleするほとんどのクラスではファイナライザーを提供する必要はありませんが、これが必要になることがあります (たとえば、ファイルバッファーをフラッシュする場合や、データをメモリに書き戻す場合など)。Although most classes using SafeHandle do not need to provide a finalizer, this is sometimes necessary (for example, to flush out file buffers or to write some data back into memory). この場合、 SafeHandleクリティカルファイナライザーが実行される前に実行が保証されるファイナライザーを提供できます。In this case, they can provide a finalizer that is guaranteed to run before the SafeHandle critical finalizer runs.

オブジェクトのClose Dispose 使用が終了したら、メソッドまたはメソッドSafeHandleを呼び出します。Call the Close or Dispose method when you are finished using the SafeHandle object. メソッドCloseは、オブジェクトSafeHandleを使用できない状態のままにします。The Close method leaves the SafeHandle object in an unusable state.

注意

オブジェクトへのClose Dispose 最後の参照を解放する前に、常にメソッドまたはメソッドをSafeHandle呼び出してください。Always call the Close or Dispose method before you release your last reference to the SafeHandle object. そうしないと、ガベージ コレクターが SafeHandle オブジェクトの Finalize メソッドを呼び出すまで、使用されているリソースは解放されません。Otherwise, the resources it is using will not be freed until the garbage collector calls the SafeHandle object's Finalize method.

セキュリティ

SecurityPermission
アンマネージコードを呼び出すためのアクセス許可。for permission to call unmanaged code. セキュリティアクション: LinkDemandSecurity action: LinkDemand. 関連付けられた列挙型:UnmanagedCodeAssociated enumeration: UnmanagedCode

Dispose(Boolean) Dispose(Boolean) Dispose(Boolean) Dispose(Boolean)

通常の破棄操作を実行するかどうかを指定して、SafeHandle クラスによって使用されているアンマネージ リソースを解放します。Releases the unmanaged resources used by the SafeHandle class specifying whether to perform a normal dispose operation.

protected:
 virtual void Dispose(bool disposing);
[System.Security.SecurityCritical]
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 Boolean Boolean Boolean

通常の破棄操作を実行する場合は true。ハンドルを終了する場合は falsetrue for a normal dispose operation; false to finalize the handle.

注釈

disposingパラメーターをにDispose 設定falseして、メソッドを明示的に呼び出すことは避けてください。You should never explicitly call the Dispose method with the disposing parameter set to false.

セキュリティ

SecurityPermission
アンマネージコードを呼び出すためのアクセス許可。for permission to call unmanaged code. セキュリティアクション: LinkDemandSecurity action: LinkDemand. 関連付けられた列挙型:UnmanagedCodeAssociated enumeration: UnmanagedCode

適用対象