Język

CriticalHandle.Close Metoda

Definicja

Oznacza dojście do zwalniania i zwalniania zasobów.

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

Uwagi

Close Wywołanie metody or Dispose umożliwia zwolnienie zasobów. SafeHandle W przeciwieństwie do klasy, zawsze będzie to miało miejsce natychmiast, ponieważ nie ma liczby odwołań, aby wskazać, że inne wątki używają tego uchwytu. W związku z tym należy stosować mechanizm synchronizacji, aby upewnić się, że można bezpiecznie wywołać metodę Close . Chociaż większość klas używających CriticalHandle klasy nie musi dostarczać finalizatora, czasami jest to konieczne (na przykład do opróżniania buforów plików lub zapisywania niektórych danych z powrotem do pamięci). W takim przypadku klasa może dostarczyć finalizator, który ma gwarancję uruchomienia przed uruchomieniem finalizatora krytycznego CriticalHandle .

Wywołaj metodę Close or Dispose po zakończeniu CriticalHandle korzystania z obiektu . Metoda Close pozostawia CriticalHandle obiekt w stanie bezużytecznym.

Uwaga Zawsze wywołaj Close metodę lub Dispose przed wydaniem ostatniego CriticalHandle odwołania do obiektu. W przeciwnym razie zasoby, których używasz, nie zostaną zwolnione, dopóki moduł odśmiecający elementy bezużyteczne wywoła CriticalHandle metodę obiektu Finalize .

Dotyczy