Sdílet prostřednictvím


GCHandleType Výčet

Definice

Představuje typy popisovačů, které GCHandle typ může přidělit.

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
Dědičnost
GCHandleType
Atributy

Pole

Normal 2

Tento typ popisovače představuje neprůhlhlý popisovač, což znamená, že adresu připnutého objektu nelze přeložit pomocí úchytu. Tento typ můžete použít ke sledování objektu a zabránění jeho shromažďování pomocí systému uvolňování paměti. Tento člen výčtu je užitečný, pokud nespravovaný klient obsahuje jediný odkaz, který je nedetekovatelný z uvolňování paměti, na spravovaný objekt.

Pinned 3

Tento typ popisovače je podobný Normaljako , ale umožňuje pořídit adresu připnutého objektu. To zabraňuje systému uvolňování paměti v pohybu objektu, a tím podkopává efektivitu systému uvolňování paměti. Free() Pomocí metody co nejdříve uvolněte přidělený popisovač.

Weak 0

Tento typ popisovače se používá ke sledování objektu, ale umožňuje jeho shromažďování. Při shromáždění objektu se obsah objektu GCHandle vynuluje. Weak Odkazy se před spuštěním finalizační metody vynulují, takže i v případě, že finalizační kontrola objektu znovu provede, Weak odkaz se stále vynuluje.

WeakTrackResurrection 1

Tento typ popisovače je podobný Weakobjektu , ale popisovač není vynulován, pokud je objekt během finalizace vynulován.

Platí pro

Viz také