GCHandleType Enum
Definition
Important
Some information relates to prerelease product that may be substantially modified before it’s released. Microsoft makes no warranties, express or implied, with respect to the information provided here.
Represents the types of handles the GCHandle type can allocate.
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
- Inheritance
- Attributes
Fields
Normal | 2 | This handle type represents an opaque handle, meaning you cannot resolve the address of the pinned object through the handle. You can use this type to track an object and prevent its collection by the garbage collector. This enumeration member is useful when an unmanaged client holds the only reference, which is undetectable from the garbage collector, to a managed object. |
Pinned | 3 | This handle type is similar to Normal, but allows the address of the pinned object to be taken. This prevents the garbage collector from moving the object and hence undermines the efficiency of the garbage collector. Use the Free() method to free the allocated handle as soon as possible. |
Weak | 0 | This handle type is used to track an object, but allow it to be collected. When an object is collected, the contents of the GCHandle are zeroed. |
WeakTrackResurrection | 1 | This handle type is similar to Weak, but the handle is not zeroed if the object is resurrected during finalization. |
Applies to
See also
意見反應
https://aka.ms/ContentUserFeedback。
即將登場:在 2024 年,我們將逐步淘汰 GitHub 問題作為內容的意見反應機制,並將它取代為新的意見反應系統。 如需詳細資訊,請參閱:提交並檢視相關的意見反應