Freigeben über


C28112

Warnung C28112: Auf eine Variable, auf die über eine ineinandergegriffene Funktion zugegriffen wird, muss über eine ineinandergegriffene Funktion immer zugreifen

Siehe Zeile Zahl: Es ist nicht immer sicher, auf eine Variable zuzugreifen, auf die über die Interlocked*-Familie von Funktionen auf andere Weise zugegriffen wird.

Auf eine Variable, auf die zugegriffen wird, indem die ineinandergegriffenen Exekutivstützroutinen, wie InterlockedCompareExchangeAcquire verwendet, wird später darauf, indem eine andere Methode erstellt wird. Obwohl auf bestimmte gewöhnliche Zuweisungen, zugreift und Vergleiche zu den Variablen, die durch die Interlocked*-Routinen verwendet werden, sicher zugegriffen werden kann, indem eine andere Methode, ist das Risiko groß genug, jede Instanz zu überprüfen auszuschließen.

Beispiel

Im folgenden Code wird diese Warnung generiert:

inter_var --;
...
InterlockedIncrement(&inter_var);

Im folgenden Codebeispiel werden diese Warnung:

InterlockedDecrement(&inter_var);
...
InterlockedIncrement(&inter_var);