Condividi tramite


/volatile (interpretazione della parole chiave volatile)

Specifica in che modo deve essere interpretata la parola chiave volatile.

/volatile:{iso|ms}

Argomenti

  • /volatile:iso
    Selezionare la semantica ridotta volatile definita dal linguaggio di ISO-standard C++. La semantica di acquisizione/rilascio non è garantita negli accessi volatili. Se il compilatore è invece destinato ad ARM, si tratta dell'interpretazione predefinita di volatile.

  • /volatile:ms
    Selezionare la semantica estesa Microsoft volatile, che garantisce l'aggiunta dell'ordinamento in memoria oltre al linguaggio ISO-standard C++. La semantica di acquisizione/rilascio non è garantita negli accessi volatili. Tuttavia, questa opzione forza anche il compilatore a generare barriere di memoria hardware, che possono aggiungere un sovraccarico su ARM e in altre architetture con memoria a ordinamento debole. Se il compilatore è destinato a qualsiasi piattaforma tranne quella ARM, si tratta dell'interpretazione predefinita di volatile.

Note

È consigliabile utilizzare /volatile:iso con le primitive di sincronizzazione esplicite e le funzioni intrinseche del compilatore, quando si utilizzano con una memoria che è condivisa tra thread. Per ulteriori informazioni, vedere volatile (C++).

Se si trasferisce il codice esistente o si modifica questa opzione nel corso un progetto, può essere utile abilitare l'avviso C4746 per identificare le posizioni di codice interessate dalla differenza di semantica.

Non esiste un equivalente #pragma al controllo di questa opzione.

Per impostare l'opzione del compilatore /volatile in Visual Studio

  1. Aprire la finestra di dialogo Pagine delle proprietà del progetto. Per ulteriori informazioni, vedere Procedura: aprire le pagine delle proprietà dei progetti.

  2. Selezionare la cartella C/C++.

  3. Selezionare la pagina delle proprietà Riga di comando.

  4. Nella casella Opzioni aggiuntive aggiungere /volatile:iso o /volatile:ms.

Vedere anche

Riferimenti

volatile (C++)

Opzioni del compilatore

Impostazione delle opzioni del compilatore