/volatile (Interpretace klíčového slova volatile)
Určuje způsob interpretace klíčového slova volatile.
/volatile:{iso|ms}
Arguments
/volatile:iso
Vybere striktní sémantiky volatile podle standardu ISO jazyka C++.Sémantika získání nebo vydání není zaručena pro nestálé přístupy.Pokud se kompilátor zaměřuje na ARM, toto je výchozí výklad volatile./volatile:ms
Vybere sémantiku volatile s rozšířením společnosti Microsoft, která zaručuje řazení paměti nad rámec standardu ISO jazyka C++.Sémantika získání nebo vydání je zaručena pro nestálé přístupy.Tato možnost však způsobí, že kompilátor generuje hardwarové překážky paměti, které mohou přidat významné zatížení na ARM a jiné paměti s architekturou se slabým řazením.Pokud se kompilátor zaměřuje na libovolnou platformu s výjimkou ARM, toto je výchozí výklad volatile.
Poznámky
Důrazně doporučujeme používat /volatile:iso spolu s explicitní synchronizací primitiv a vnitřních typů kompilátoru při jednání s pamětí, která je sdílena mezi vlákny.Další informace naleznete v tématu volatile (C++).
Pokud portujete existující kód nebo měníte tuto možnost během projektu, může být užitečné povolit upozornění C4746 k identifikaci umístění kódu, která jsou ovlivněna rozdíly v sémantice.
Neexistuje žádný ekvivalent #pragma pro ovládání této možnosti.
Nastavení možnosti /volatilní kompilátor v aplikaci Visual Studio
Otevřete dialogové okno Stránky vlastností projektu.Další informace naleznete v tématu Postupy: Otevření stránek vlastností projektu.
Vyberte složku C/C++.
Vyberte stránku vlastností Příkazový řádek.
V poli Další možnosti zadejte parametr /volatile:iso nebo /volatile:ms.