Udostępnij za pośrednictwem


GCHandleType Wyliczenie

Definicja

Reprezentuje typy dojść, które GCHandle może przydzielić typ.

public enum class GCHandleType
public enum GCHandleType
[System.Serializable]
public enum GCHandleType
[System.Serializable]
[System.Runtime.InteropServices.ComVisible(true)]
public enum GCHandleType
type GCHandleType = 
[<System.Serializable>]
type GCHandleType = 
[<System.Serializable>]
[<System.Runtime.InteropServices.ComVisible(true)>]
type GCHandleType = 
Public Enum GCHandleType
Dziedziczenie
GCHandleType
Atrybuty

Pola

Normal 2

Ten typ uchwytu reprezentuje nieprzezroczyste dojście, co oznacza, że nie można rozpoznać adresu przypiętego obiektu za pośrednictwem uchwytu. Tego typu można użyć do śledzenia obiektu i zapobiegania jego wyrzucaniu przez moduł odśmiecający pamięci. Ten element członkowski wyliczenia jest przydatny, gdy niezarządzany klient przechowuje jedyne odwołanie, które jest niewykrywalne z modułu odśmiecania pamięci do zarządzanego obiektu.

Pinned 3

Ten typ uchwytu jest podobny do Normal, ale umożliwia użycie adresu przypiętego obiektu. Zapobiega to przeniesieniu obiektu przez moduł odśmiecający pamięci i w związku z tym podważa wydajność modułu odśmiecającemu. Free() Użyj metody , aby zwolnić przydzielone dojście tak szybko, jak to możliwe.

Weak 0

Ten typ uchwytu służy do śledzenia obiektu, ale umożliwia zbieranie go. Po zebraniu obiektu zawartość obiektu GCHandle jest zerowana. Weak odwołania są zerowe przed uruchomieniem finalizatora, więc nawet jeśli finalizator wskrzesi obiekt, Weak odwołanie jest nadal zerowane.

WeakTrackResurrection 1

Ten typ uchwytu jest podobny do Weak, ale dojście nie jest zerowane, jeśli obiekt zostanie wskrzeszony podczas finalizacji.

Dotyczy

Zobacz też