C28112
warning C28112: Una variabile che viene acceduta tramite una funzione Interlocked deve sempre essere acceduta tramite una funzione Interlocked
Vedere il numero di linea: non è sempre sicuro accedere a variabili accedute tramite la famiglia di funzioni Interlocked* in altro modo.
Una variabile a cui si accede tramite le routine esecutive di supporto Interlocked, come InterlockedCompareExchangeAcquire, viene successivamente acceduta tramite un metodo diverso. Sebbene alcuni assegnamenti comuni, gli accessi e i confronti a variabili che sono utilizzati dalle routine di Interlocked* possano essere acceduti in modo sicuro usando un metodo diverso, il rischio è sufficiente da giustificare l'esaminazione ogni istanza.
Esempio
Il seguente codice di esempio genera questo warning:
inter_var --;
...
InterlockedIncrement(&inter_var);
L'esempio di codice seguente evita questo avviso:
InterlockedDecrement(&inter_var);
...
InterlockedIncrement(&inter_var);