RuntimeHelpers.PrepareMethod Metódus

Definíció

Előkészít egy metódust a korlátozott végrehajtási régióba (CER) való felvételhez.

Túlterhelések

Name Description
PrepareMethod(RuntimeMethodHandle)

Előkészít egy metódust a korlátozott végrehajtási régióba (CER) való felvételhez.

PrepareMethod(RuntimeMethodHandle, RuntimeTypeHandle[])

Előkészít egy metódust a korlátozott végrehajtási régióba (CER) való felvételhez a megadott példányosítással.

PrepareMethod(RuntimeMethodHandle)

Forrás:
RuntimeHelpers.CoreCLR.cs
Forrás:
RuntimeHelpers.CoreCLR.cs
Forrás:
RuntimeHelpers.CoreCLR.cs
Forrás:
RuntimeHelpers.CoreCLR.cs
Forrás:
RuntimeHelpers.CoreCLR.cs

Előkészít egy metódust a korlátozott végrehajtási régióba (CER) való felvételhez.

public:
 static void PrepareMethod(RuntimeMethodHandle method);
public static void PrepareMethod(RuntimeMethodHandle method);
[System.Security.SecurityCritical]
public static void PrepareMethod(RuntimeMethodHandle method);
static member PrepareMethod : RuntimeMethodHandle -> unit
[<System.Security.SecurityCritical>]
static member PrepareMethod : RuntimeMethodHandle -> unit
Public Shared Sub PrepareMethod (method As RuntimeMethodHandle)

Paraméterek

method
RuntimeMethodHandle

A előkészítendő módszer fogópontja.

Attribútumok

Megjegyzések

A fordítók ezzel a módszerrel kezelik a PrepareMethod(RuntimeMethodHandle) korlátozott végrehajtási régióban (CER) végrehajtott virtuális hívásokat. A JIT fordítási ideje alatt a közös nyelvi futtatókörnyezet általában nem rendelkezik elegendő információval a virtuális hívás céljáról. Ezért a futtatókörnyezet kezdetben nem készíti elő a hívási gráf adott szegmensét. Ha a CER-t használó kód rendelkezik elegendő tudással a cél meghatározásához a CER tényleges megadása előtt bármikor, meghívhatja PrepareMethod(RuntimeMethodHandle) ugyanazt a futásidejű előkészítést, amelyet általában az argumentumként megadott módszerrel gyökerező TANÚSÍTVÁNY esetében végeznek.

A következőre érvényes:

PrepareMethod(RuntimeMethodHandle, RuntimeTypeHandle[])

Forrás:
RuntimeHelpers.CoreCLR.cs
Forrás:
RuntimeHelpers.CoreCLR.cs
Forrás:
RuntimeHelpers.CoreCLR.cs
Forrás:
RuntimeHelpers.CoreCLR.cs
Forrás:
RuntimeHelpers.CoreCLR.cs

Előkészít egy metódust a korlátozott végrehajtási régióba (CER) való felvételhez a megadott példányosítással.

public:
 static void PrepareMethod(RuntimeMethodHandle method, cli::array <RuntimeTypeHandle> ^ instantiation);
public static void PrepareMethod(RuntimeMethodHandle method, RuntimeTypeHandle[]? instantiation);
[System.Security.SecurityCritical]
public static void PrepareMethod(RuntimeMethodHandle method, RuntimeTypeHandle[] instantiation);
public static void PrepareMethod(RuntimeMethodHandle method, RuntimeTypeHandle[] instantiation);
static member PrepareMethod : RuntimeMethodHandle * RuntimeTypeHandle[] -> unit
[<System.Security.SecurityCritical>]
static member PrepareMethod : RuntimeMethodHandle * RuntimeTypeHandle[] -> unit
Public Shared Sub PrepareMethod (method As RuntimeMethodHandle, instantiation As RuntimeTypeHandle())

Paraméterek

method
RuntimeMethodHandle

A előkészítendő módszer fogópontja.

instantiation
RuntimeTypeHandle[]

A metódusnak átadott példány.

Attribútumok

Megjegyzések

A metódus használatával általános támogatást biztosíthat a PrepareMethod(RuntimeMethodHandle, RuntimeTypeHandle[]) fordítók számára. A közös nyelvi futtatókörnyezet nem tud olyan korlátozott végrehajtási régiókat (CER-eket) előkészíteni, amelyek olyan metódusban gyökereznek, amely általános típusparaméterekkel rendelkezik (vagy egy típusparaméter a metódust tartalmazó osztályon, vagy egy a metóduson), amikor ezek a típusparaméterek referenciatípusként vannak példányosítva.

Ezzel a túlterheléssel átadhat egy adott példányt (például egy típustömböt), megadva az osztálytípus paramétereit (ha vannak ilyenek), majd a metódustípus paramétereit (ha vannak). A futtatókörnyezet előkészíti a metódus példányosítását. (Erre csak akkor van szükség, ha a használt példányok legalább egy referenciatípus-paramétert tartalmaznak.) Így használhat cer stílusú try záradékot egy általános metódusban (vagy egy általános osztály nemgenerikus metódusában), és megbízhatóan működik a példányokkal Int32 vagy más értéktípusokkal. Az olyan referenciatípusok példányosításához, mint például String, először explicit PrepareMethod(RuntimeMethodHandle, RuntimeTypeHandle[]) módszert kell használnia a CER gyökérmetódusán.

A következőre érvényes: