OpCodes.Volatile Pole
Definice
Důležité
Některé informace platí pro předběžně vydaný produkt, který se může zásadně změnit, než ho výrobce nebo autor vydá. Microsoft neposkytuje žádné záruky, výslovné ani předpokládané, týkající se zde uváděných informací.
Určuje, že adresa, která je aktuálně na vrcholu zásobníku vyhodnocení, může být nestálou a výsledky čtení tohoto umístění nelze uložit do mezipaměti nebo že nelze potlačit více úložišť do tohoto umístění.
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
Hodnota pole
Poznámky
Následující tabulka uvádí hexadecimální formát sestavení instrukce a formát sestavení MSIL (Microsoft Intermediate Language) spolu se stručným souhrnem referenčních informací:
Formát | Formát sestavení | Description |
---|---|---|
FE 13 | Těkavých. | Označuje, že následný odkaz na ukazatel je nestálý. |
Přechodné chování zásobníku v sekvenčním pořadí je:
- Adresa se nasdílí do zásobníku.
volatile
. Určuje, že adresa je nestálou adresou (to znamená, že na ni lze externě odkazovat na aktuální vlákno provádění) a výsledky čtení tohoto umístění nelze uložit do mezipaměti nebo že více úložišť do tohoto umístění nelze potlačit. Označení přístupu jako volatile
má vliv pouze na tento jediný přístup; ostatní přístupy ke stejnému umístění musí být označeny samostatně. Přístup k nestálým umístěním není nutné provádět atomicky.
Předpony Unaligned a volatile
lze kombinovat v libovolném pořadí. Musí bezprostředně předcházet pokynu ldind
, stind
, ldfld
, stfld
ldobj
, stobj
, , initblk
nebo cpblk
.
volatile
Pro pokyny a Stsfld je povolena pouze předponaLdsfld.
Následující Emit přetížení metody může použít volatile
opcode: