CriticalHandle.Close 方法

定义

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

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 ()
属性

注解

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

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

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

适用于