OpCodes.Localloc Campo
Definizione
Importante
Alcune informazioni sono relative alla release non definitiva del prodotto, che potrebbe subire modifiche significative prima della release definitiva. Microsoft non riconosce alcuna garanzia, espressa o implicita, in merito alle informazioni qui fornite.
Esegue l'allocazione di un numero di byte dal pool di memoria dinamica locale e inserisce l'indirizzo (un puntatore transitorio di tipo *
) del primo byte allocato nello stack di valutazione.
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
Valore del campo
Commenti
La tabella seguente elenca il formato di assembly Esadecimale e MSIL (Microsoft Intermediate Language), insieme a un breve riepilogo dei riferimenti:
Formato | Formato assembly | Descrizione |
---|---|---|
FE 0F | localloc | Allocare spazio dall'heap locale. |
Il comportamento di transizione dello stack, in ordine sequenziale, è:
Il numero di byte da allocare viene inserito nello stack.
Il numero di byte viene estratto dallo stack; una quantità di memoria corrispondente alla dimensione viene allocata dall'heap locale.
Un puntatore al primo byte della memoria allocata viene inserito nello stack.
L'istruzione localloc
alloca size
(tipo natural unsigned int
) byte dal pool di memoria dinamica locale e restituisce l'indirizzo (un puntatore temporaneo, tipo *
) del primo byte allocato. Il blocco di memoria restituito viene inizializzato su 0 solo se il flag di inizializzazione nel metodo è true
. Quando il metodo corrente esegue un Ret, il pool di memoria locale viene reso disponibile per il riutilizzo.
L'indirizzo risultante è allineato in modo che qualsiasi tipo di dati primitivo possa essere archiviato usando le stind
istruzioni (ad esempio ) e caricate usando le ldind
istruzioni (ad esempio Stind_I4Ldind_I4).
L'istruzione localloc
non può essere eseguita all'interno di un filter
blocco , catch
, finally
o fault
.
StackOverflowException viene generata se la memoria non è sufficiente per gestire la richiesta.
L'overload del metodo seguente Emit può usare il localloc
codice operativo:
Si applica a
Commenti e suggerimenti
https://aka.ms/ContentUserFeedback.
Presto disponibile: nel corso del 2024 verranno dismessi i problemi di GitHub come meccanismo di feedback per il contenuto e verranno sostituiti con un nuovo sistema di feedback. Per altre informazioni, vedere:Invia e visualizza il feedback per