Freigeben über


CriticalHandle.Close Methode

Definition

Markiert das Handle für das Freigeben und Verfügbarmachen von Ressourcen.

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 ()
Attribute

Hinweise

Wenn Sie die Close -Methode oder Dispose aufrufen, können die Ressourcen freigegeben werden. Im Gegensatz zur -Klasse geschieht dies SafeHandle immer sofort, da keine Verweisanzahl vorhanden ist, um anzugeben, dass andere Threads dieses Handle verwenden. Daher müssen Sie einen Synchronisierungsmechanismus verwenden, um sicherzustellen, dass die Close -Methode sicher aufgerufen werden kann. Obwohl die meisten Klassen, die die CriticalHandle -Klasse verwenden, keinen Finalizer bereitstellen müssen, ist dies manchmal erforderlich (z. B. zum Leeren von Dateipuffern oder zum Zurückschreiben einiger Daten in den Arbeitsspeicher). In diesem Fall kann die -Klasse einen Finalizer bereitstellen, der garantiert ausgeführt wird, bevor der CriticalHandle kritische Finalizer ausgeführt wird.

Rufen Sie die Close - oder Dispose -Methode auf, wenn Sie mit der Verwendung des CriticalHandle -Objekts fertig sind. Die Close -Methode belässt das CriticalHandle Objekt in einem unbrauchbaren Zustand.

Hinweis Rufen Close Sie immer oder Dispose auf, bevor Sie Den letzten Verweis auf das CriticalHandle -Objekt freigeben. Andernfalls bleiben die verwendeten Ressourcen reserviert, bis die Garbage Collection die CriticalHandle-Methode des Finalize-Objekts aufruft.

Gilt für: