GCHandleType 列挙型
定義
重要
一部の情報は、リリース前に大きく変更される可能性があるプレリリースされた製品に関するものです。 Microsoft は、ここに記載されている情報について、明示または黙示を問わず、一切保証しません。
型が割り当てることができるハンドルの種類を GCHandle 表します。
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
- 継承
- 属性
フィールド
Normal | 2 | この種類のハンドルは、非透過ハンドルを表します。つまり、このハンドルを使用して、その中に格納されている固定化されたオブジェクトのアドレスを解決することはできません。 この種類のハンドルは、オブジェクトを追跡し、ガベージ コレクターによって収集されないようにするために使用できます。 マネージド オブジェクトへの、ガベージ コレクターが検出できない唯一の参照をアンマネージド クライアントが保持している場合、この列挙体メンバーを使用すると便利です。 |
Pinned | 3 | この種類ハンドルは Normal に似ていますが、このハンドルを使用した場合は、固定オブジェクトのアドレスを取得できます。 これにより、ガベージ コレクターがそのオブジェクトを移動できなくなるため、ガベージ コレクターの効率は低下することになります。 割り当てられたハンドルをできる限り早く解放するには、Free() メソッドを使用します。 |
Weak | 0 | この種類のハンドルはオブジェクトを追跡するために使用しますが、そのオブジェクトを収集できるようにもします。 オブジェクトが収集された場合、GCHandle インスタンスの内容は 0 に設定されます。
|
WeakTrackResurrection | 1 | この種類のハンドルは Weak に似ていますが、ファイナライズ中にオブジェクトが復活された場合でも、このハンドルは 0 には設定されません。 |
適用対象
こちらもご覧ください
.NET