OpCodes.Volatile フィールド
定義
重要
一部の情報は、リリース前に大きく変更される可能性があるプレリリースされた製品に関するものです。 Microsoft は、ここに記載されている情報について、明示または黙示を問わず、一切保証しません。
現在評価スタックの一番上にあるアドレスが揮発性である可能性があるため、この位置の読み取り結果をキャッシュできないこと、またはこの位置への複数の格納を中止できないことを指定します。
public: static initonly System::Reflection::Emit::OpCode Volatile;
public static readonly System.Reflection.Emit.OpCode Volatile;
staticval mutable Volatile : System.Reflection.Emit.OpCode
Public Shared ReadOnly Volatile As OpCode
フィールド値
注釈
次の表に、命令の 16 進数と Microsoft Intermediate Language (MSIL) アセンブリ形式と、簡単なリファレンスの概要を示します。
形式 | アセンブリ形式 | 説明 |
---|---|---|
FE 13 | 揮発 性。 | 後続のポインター参照が揮発性であることを示します。 |
スタック遷移の動作は、順番に次のようになります。
- アドレスがスタックにプッシュされます。
volatile
. は、アドレスが揮発性アドレス (つまり、現在の実行スレッドの外部から参照可能) であり、その場所を読み取った結果をキャッシュできないか、その場所への複数のストアを抑制できないことを指定します。 アクセスを として volatile
マークすると、その 1 つのアクセスにのみ影響します。同じ場所への他のアクセスは個別にマークする必要があります。 揮発性の場所へのアクセスはアトミックに実行する必要はありません。
プレフィックスと volatile
プレフィックスはUnaligned、どちらの順序でも組み合わせることができます。 、、stind
、ldfld
、stobj
ldobj
stfld
initblk
または cpblk
命令の直前に置くldind
必要があります。 および 命令にはvolatile
プレフィックスのみが許可されますLdsfld。Stsfld
次 Emit のメソッド オーバーロードでは、オペコードを volatile
使用できます。
適用対象
.NET