OpCodes.Localloc Pole
Definicja
Ważne
Niektóre informacje odnoszą się do produktu w wersji wstępnej, który może zostać znacząco zmodyfikowany przed wydaniem. Firma Microsoft nie udziela żadnych gwarancji, jawnych lub domniemanych, w odniesieniu do informacji podanych w tym miejscu.
Przydziela określoną liczbę bajtów z lokalnej puli pamięci dynamicznej i wypycha adres (wskaźnik przejściowy, typ *
) pierwszego przydzielonego bajtu do stosu oceny.
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
Wartość pola
Uwagi
W poniższej tabeli wymieniono format zestawu szesnastkowy instrukcji i microsoft intermediate language (MSIL) wraz z krótkim podsumowaniem referencyjnym:
Format | Format zestawu | Opis |
---|---|---|
FE 0F | localloc | Przydziel miejsce z lokalnej sterty. |
Zachowanie przejściowe stosu w kolejności sekwencyjnej jest następujące:
Liczba bajtów do przydzielenia jest wypychana do stosu.
Liczba bajtów jest wyskoczona ze stosu; ilość pamięci odpowiadającej rozmiarowi jest przydzielana z lokalnego sterty.
Wskaźnik do pierwszego bajtu przydzielonej pamięci jest wypychany do stosu.
Instrukcja localloc
przydziela (typ natural unsigned int
) bajty size
z lokalnej puli pamięci dynamicznej i zwraca adres (wskaźnik przejściowy, typ *
) pierwszego przydzielonego bajtu. Zwrócony blok pamięci jest inicjowany do wartości 0 tylko wtedy, gdy flaga inicjowania w metodzie to true
. Gdy bieżąca metoda wykonuje metodę Ret, pula pamięci lokalnej jest udostępniana do ponownego użycia.
Wynikowy adres jest wyrównany tak, aby każdy pierwotny typ danych mógł być tam przechowywany przy użyciu instrukcji (takich jak Stind_I4) i załadowany przy użyciu stind
ldind
instrukcji (takich jak Ldind_I4).
Instrukcja localloc
nie może wystąpić w bloku filter
, catch
, finally
lub fault
.
StackOverflowException jest zgłaszany, jeśli nie ma wystarczającej ilości pamięci do obsługi żądania.
Emit Następujące przeciążenie metody może używać localloc
kodu opcode: