SafeHandle.Close メソッド
重要
一部の情報は、リリース前に大きく変更される可能性があるプレリリースされた製品に関するものです。 Microsoft は、ここに記載されている情報について、明示または黙示を問わず、一切保証しません。
リソースを解放するためのハンドルをマークします。
public:
void Close();
public void Close();
[System.Security.SecurityCritical]
public void Close();
member this.Close : unit -> unit
[<System.Security.SecurityCritical>]
member this.Close : unit -> unit
Public Sub Close ()
- 属性
または Dispose メソッドをClose呼び出すと、リソースを解放できます。 これは、他のスレッドが同じセーフ ハンドル オブジェクトを使用している場合、すぐには発生しない可能性がありますが、そうではなくなったらすぐに発生します。 クラスを SafeHandle 使用するほとんどのクラスではファイナライザーを提供する必要はありませんが、(たとえば、ファイル バッファーをフラッシュしたり、データをメモリに書き戻したりするために) 必要な場合があります。 この場合、 クラスは、クリティカル ファイナライザーが実行される前に実行することが保証されるファイナライザーを SafeHandle 提供できます。
オブジェクトの Close 使用が完了したら、 メソッドまたは Dispose メソッドを SafeHandle 呼び出します。
注意
オブジェクトへの最後の参照を解放する前に、常に または Dispose をSafeHandle呼び出Closeします。 そうしないと、ガベージ コレクターが SafeHandle オブジェクトの Finalize メソッドを呼び出すまで、使用されているリソースは解放されません。
製品 | バージョン |
---|---|
.NET | Core 2.0, Core 2.1, Core 2.2, Core 3.0, Core 3.1, 5, 6, 7, 8, 9, 10 |
.NET Framework | 2.0, 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1 |
.NET Standard | 2.0, 2.1 |
.NET に関するフィードバック
.NET はオープンソース プロジェクトです。 フィードバックを提供するにはリンクを選択します。