Bagikan melalui


GCHandleType Enum

Definisi

Mewakili jenis handel yang GCHandle dapat dialokasikan oleh jenis.

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
Warisan
GCHandleType
Atribut

Bidang

Normal 2

Jenis handel ini mewakili handel buram, yang berarti Anda tidak dapat menyelesaikan alamat objek yang disematkan melalui handel. Anda dapat menggunakan jenis ini untuk melacak objek dan mencegah pengumpulannya oleh pengumpul sampah. Anggota enumerasi ini berguna ketika klien yang tidak dikelola memegang satu-satunya referensi, yang tidak terdeteksi dari pengumpul sampah, ke objek terkelola.

Pinned 3

Jenis handel ini mirip Normaldengan , tetapi memungkinkan alamat objek yang disematkan untuk diambil. Ini mencegah pengumpul sampah memindahkan objek dan karenanya merusak efisiensi pengumpul sampah. Free() Gunakan metode untuk membebaskan handel yang dialokasikan sesegera mungkin.

Weak 0

Jenis handel ini digunakan untuk melacak objek, tetapi memungkinkannya untuk dikumpulkan. Saat objek dikumpulkan, isinya GCHandle di-zero. Weak referensi di-nol sebelum finalizer berjalan, jadi bahkan jika finalizer mebangkitkan kembali objek, Weak referensi masih nol.

WeakTrackResurrection 1

Jenis handel ini mirip Weakdengan , tetapi handel tidak nol jika objek dibangkitkan kembali selama finalisasi.

Berlaku untuk

Lihat juga