Partager via


OpCodes.Volatile Champ

Définition

Spécifie qu'une adresse actuellement située en haut de la pile d'évaluation peut être volatile et que les résultats de la lecture de cet emplacement ne peuvent pas être mis en cache ou que plusieurs magasins situés à cet emplacement ne peuvent pas être supprimés.

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 

Valeur de champ

Remarques

Le tableau suivant répertorie le format d’assembly MSIL et hexadécimal de l’instruction, ainsi qu’un bref résumé des références :

Format Format d’assembly Description
FE 13 Volatile. Indique que la référence de pointeur suivante est volatile.

Le comportement transitionnel de la pile, dans l’ordre séquentiel, est le suivant :

  1. Une adresse est envoyée dans la pile.

volatile. spécifie que l’adresse est une adresse volatile (c’est-à-dire qu’elle peut être référencée en externe au thread d’exécution actuel) et que les résultats de la lecture de cet emplacement ne peuvent pas être mis en cache ou que plusieurs magasins à cet emplacement ne peuvent pas être supprimés. Le marquage d’un accès comme volatile affectant uniquement cet accès unique ; les autres accès au même emplacement doivent être marqués séparément. L’accès aux emplacements volatiles n’a pas besoin d’être effectué atomiquement.

Les Unaligned préfixes et volatile peuvent être combinés dans l’un ou l’autre ordre. Ils doivent immédiatement précéder une ldindinstruction , stind, ldfld, ldobjstfld, stobj, initblk, ou cpblk . Seul le volatile préfixe est autorisé pour les Ldsfld instructions et Stsfld .

La surcharge de méthode suivante Emit peut utiliser l’opcode volatile :

S’applique à