OpCodes.Localloc フィールド
定義
重要
一部の情報は、リリース前に大きく変更される可能性があるプレリリースされた製品に関するものです。 Microsoft は、ここに記載されている情報について、明示または黙示を問わず、一切保証しません。
ローカル動的メモリ プールから特定のバイト数を割り当て、最初に割り当てたバイトのアドレス (遷移ポインター、*
型) を評価スタックにプッシュします。
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
フィールド値
注釈
次の表に、命令の 16 進数と Microsoft Intermediate Language (MSIL) アセンブリ形式と、簡単な参照の概要を示します。
形式 | アセンブリ形式 | 説明 |
---|---|---|
FE 0F | localloc | ローカル ヒープから領域を割り当てます。 |
スタック遷移の動作は、順番に次のようになります。
割り当てられるバイト数は、スタックにプッシュされます。
バイト数はスタックからポップされます。サイズに対応するメモリの量は、ローカル ヒープから割り当てられます。
割り当てられたメモリの最初のバイトへのポインターがスタックにプッシュされます。
命令はlocalloc
、ローカル動的メモリ プールから (型natural unsigned int
) バイトを割り当てsize
、最初に割り当てられたバイトのアドレス (一時的なポインター、型*
) を返します。 返されるメモリ ブロックは、 メソッド true
の initialize フラグが の場合にのみ 0 に初期化されます。 現在のメソッドが を Ret実行すると、ローカル メモリ プールが再利用できるようになります。
結果のアドレスは、命令 (などStind_I4) を使用してstind
プリミティブ データ型をそこに格納し、命令 (などLdind_I4) を使用してldind
読み込むことができるように配置されます。
命令はlocalloc
、、catch
、finally
または fault
ブロック内でfilter
実行できません。
StackOverflowException は、要求をサービスするためのメモリが不足している場合にスローされます。
次 Emit のメソッド オーバーロードでは、オペコードを localloc
使用できます。
適用対象
.NET