CriticalHandle.Dispose 方法

定义

标记句柄,以便释放资源。

重载

Dispose()

释放由 CriticalHandle 使用的所有资源。

Dispose(Boolean)

释放 CriticalHandle 类所使用的非托管资源,指定是否执行常规释放操作。

Dispose()

Source:
CriticalHandle.cs
Source:
CriticalHandle.cs
Source:
CriticalHandle.cs

释放由 CriticalHandle 使用的所有资源。

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

实现

注解

Close调用 或 Dispose 方法可以释放资源。 SafeHandle与 类不同,这始终会立即发生,因为没有引用计数来指示其他线程正在使用此句柄。 因此,必须使用同步机制来确保调用 方法是安全的 Dispose 。 尽管大多数使用 CriticalHandle 类的类不需要提供终结器,但有时需要提供终结器,例如, (刷新文件缓冲区或将某些数据写回到内存) 。 在这种情况下, 类可以提供一个终结器,该终结器保证在 CriticalHandle 关键终结器运行之前运行。

Close使用 完 对象后,CriticalHandle调用 或 Dispose 方法。 方法 Close 使 CriticalHandle 对象处于不可用状态。

注意在释放对 对象的最后一个引用之前,CriticalHandle始终调用 CloseDispose 方法。 否则,在垃圾回收器调用 CriticalHandle 对象的 Finalize 方法之前,该对象正在使用的资源不会被释放。

适用于

Dispose(Boolean)

Source:
CriticalHandle.cs
Source:
CriticalHandle.cs
Source:
CriticalHandle.cs

释放 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的情况下disposing显式调用 Dispose 方法。

适用于