CriticalHandle.Dispose Metoda

Definicja

Oznacza uchwyt do zwalniania i zwalniania zasobów.

Przeciążenia

Dispose()

Zwalnia wszelkie zasoby używane przez element CriticalHandle.

Dispose(Boolean)

Zwalnia niezarządzane zasoby używane przez klasę CriticalHandle określającą, czy wykonać normalną operację usuwania.

Dispose()

Źródło:
CriticalHandle.cs
Źródło:
CriticalHandle.cs
Źródło:
CriticalHandle.cs

Zwalnia wszelkie zasoby używane przez element CriticalHandle.

public void Dispose();

Implementuje

Uwagi

Close Wywoływanie metody or Dispose umożliwia zwalnianie zasobów. SafeHandle W przeciwieństwie do klasy, będzie to zawsze wykonywane 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 zapewnić bezpieczeństwo wywołania Dispose metody. Chociaż większość klas korzystających z CriticalHandle klasy nie musi dostarczać finalizatora, jest to czasami konieczne (na przykład w celu opróżnienia buforów plików lub zapisania niektórych danych z powrotem do pamięci). W takim przypadku klasa może zapewnić 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 Przed zwolnieniem ostatniego odwołania do obiektu zawsze należy wywołać metodę CloseCriticalHandle orDispose. W przeciwnym razie zasoby, których używasz, nie zostaną zwolnione do momentu wywołania CriticalHandle metody obiektu przez moduł odśmieceń Finalize pamięci.

Dotyczy

.NET 10 i inne wersje
Produkt Wersje
.NET Core 1.0, Core 1.1, 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 1.1, 1.2, 1.3, 1.4, 1.6, 2.0, 2.1
UWP 10.0

Dispose(Boolean)

Źródło:
CriticalHandle.cs
Źródło:
CriticalHandle.cs
Źródło:
CriticalHandle.cs

Zwalnia niezarządzane zasoby używane przez klasę CriticalHandle określającą, czy wykonać normalną operację usuwania.

[System.Security.SecurityCritical]
protected virtual void Dispose(bool disposing);
protected virtual void Dispose(bool disposing);

Parametry

disposing
Boolean

true w przypadku normalnej operacji usuwania; false aby sfinalizować uchwyt.

Atrybuty

Uwagi

Nigdy nie należy jawnie wywoływać Dispose metody z parametrem ustawionym disposing na false.

Dotyczy

.NET 10 i inne wersje
Produkt Wersje
.NET Core 1.0, Core 1.1, 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 1.1, 1.2, 1.3, 1.4, 1.6, 2.0, 2.1
UWP 10.0