Udostępnij za pośrednictwem


/volatile (interpretacja słowa kluczowego volatile)

Określa sposób, w jaki lotnych słowo kluczowe ma być interpretowana.

/volatile:{iso|ms}

Argumenty

  • /volatile:iso
    Wybiera ścisłe volatile semantyka zgodnie z definicją języka C++ normy ISO.Semantyka nabycia/release nie są gwarantowane przy dostępie lotnych.Jeśli kompilator jest przeznaczony dla ARM, jest to interpretacja domyślne volatile.

  • /volatile:ms
    Wybiera Microsoft extended volatile semantykę, co dodanie pamięci zamawiania gwarancje poza języka C++ normy ISO.Semantyka nabycia/release są gwarantowane przy dostępie lotnych.Wybór tej opcji powoduje także kompilator będzie generował sprzętowe pamięci barier, które może dodać znaczne obciążenie na ARM i innych słabych architektur zamawianie pamięci.Jeśli kompilator jest przeznaczony dla dowolnej platformie, z wyjątkiem ARM, jest to interpretacja domyślne volatile.

Uwagi

Zdecydowanie zaleca się używanie /volatile:iso a także jawne synchronizacyjne i intrinsics kompilatora, gdy mamy do czynienia z pamięci, która jest współużytkowana przez wątki.Aby uzyskać więcej informacji, zobacz lotne (C++).

Jeśli port istniejący kod lub zmienić tę opcję w środku projektu, może być pomocne, aby włączyć ostrzeżenie o C4746 do identyfikowania kodu lokalizacji, których dotyczy różnica w semantyce.

Ma nie #pragma równoważne do kontrolowania tej opcji.

Aby ustawić volatile kompilator opcję w programie Visual Studio

  1. Otwórz Stron właściwości okno dialogowe dla projektu.Aby uzyskać więcej informacji, zobacz Jak: Otwórz strony właściwości projektu.

  2. Wybierz C/C++ folder.

  3. Wybierz wiersza polecenia strona właściwości.

  4. W dodatkowe opcje pole, dodać /volatile:iso lub /volatile:ms.

Zobacz też

Informacje

lotne (C++)

Opcje kompilatora

Ustawianie opcji kompilatora