OpCodes.Localloc OpCodes.Localloc OpCodes.Localloc OpCodes.Localloc Field

Definition

Belegt eine bestimmte Anzahl von Bytes aus dem lokalen dynamischen Speicherpool und legt die Adresse (einen flüchtigen Zeiger, Typ ) des ersten reservierten Bytes auf dem Auswertungsstapel ab.Allocates a certain number of bytes from the local dynamic memory pool and pushes the address (a transient pointer, type ) of the first allocated byte onto the evaluation stack.

public: static initonly System::Reflection::Emit::OpCode Localloc;
public static readonly System.Reflection.Emit.OpCode Localloc;
 staticval mutable Localloc : System.Reflection.Emit.OpCode
Public Shared ReadOnly Localloc As OpCode 

Feldwert

Hinweise

In der folgenden Tabelle werden das hexadezimale und das MSIL-AssemblyFormat (Microsoft Intermediate Language) zusammen mit einer kurzen Verweis Zusammenfassung aufgelistet:The following table lists the instruction's hexadecimal and Microsoft Intermediate Language (MSIL) assembly format, along with a brief reference summary:

FormatFormat AssemblyFormatAssembly Format BeschreibungDescription
FE 0FFE 0F loczuweisunglocalloc Zuweisen von Speicherplatz aus dem lokalen HeapAllocate space from the local heap.

Das Stapel Übergangs Verhalten ist in sequenzieller Reihenfolge:The stack transitional behavior, in sequential order, is:

  1. Die Anzahl der zugeordneten Bytes wird auf den Stapel verschoben.The number of bytes to be allocated is pushed onto the stack.

  2. Die Anzahl der Bytes, die aus dem Stapel entfernt werden. eine Menge an Arbeitsspeicher, die der Größe entspricht, wird vom lokalen Heap zugeordnet.The number of bytes is popped from the stack; an amount of memory corresponding to the size is allocated from the local heap.

  3. Ein Zeiger auf das erste Byte des zugeordneten Speichers wird auf den Stapel verschoben.A pointer to the first byte of the allocated memory is pushed onto the stack.

Die localloc Anweisung natural unsigned int *ordnet (Type) Bytes aus dem lokalen dynamischen Speicherpool zu und gibt die Adresse (einen flüchtigen Zeiger, Typ) des ersten zugeordneten Bytes zurück. sizeThe localloc instruction allocates size (type natural unsigned int) bytes from the local dynamic memory pool and returns the address (a transient pointer, type *) of the first allocated byte. Der zurückgegebene Speicherblock wird nur dann auf 0 initialisiert, wenn das Initialisieren-Flag für truedie Methode ist.The block of memory returned is initialized to 0 only if the initialize flag on the method is true. Wenn die aktuelle Methode einen Retausführt, wird der lokale Speicherpool für die Wiederverwendung verfügbar gemacht.When the current method executes a Ret, the local memory pool is made available for reuse.

Die resultierende Adresse wird so ausgerichtet, dass alle primitiven Datentypen stind dort mithilfe der Anweisungen ( Stind_I4z. b.) gespeichert und mithilfe Ldind_I4der ldind Anweisungen (z. b.) geladen werden können.The resulting address is aligned so that any primitive data type can be stored there using the stind instructions (such as Stind_I4) and loaded using the ldind instructions (such as Ldind_I4).

Die localloc Anweisung kann nicht innerhalb eines filter- catch, finally-, fault -oder-Blocks auftreten.The localloc instruction cannot occur within a filter, catch, finally, or fault block.

StackOverflowExceptionwird ausgelöst, wenn nicht genügend Arbeitsspeicher vorhanden ist, um die Anforderung zu bedienen.StackOverflowException is thrown if there is insufficient memory to service the request.

In der Emit folgenden Methoden Überladung kann localloc der Opcode verwendet werden:The following Emit method overload can use the localloc opcode:

  • ILGenerator.Emit(OpCode)ILGenerator.Emit(OpCode)

Gilt für: