Freigeben über


Warnung C26101

Fehler beim ordnungsgemäßen Verwenden des verriegelten Vorgangs für die Variable "var".

Windows-APIs bieten verschiedene verriegelte Vorgänge. Anmerkung _Interlocked_ gibt an, dass nur über einen verriegelten Vorgang auf eine Variable zugegriffen werden soll. Warnung C26101 wird ausgegeben, wenn ein variabler Zugriff nicht mit der _Interlocked_ Anmerkung konsistent ist.

Beispiel

Im folgenden Beispiel wird die Warnung C26101 generiert, da ein Vertragsverstoß vorliegt _Interlocked_ .

CRITICAL_SECTION cs;
typedef struct _DATA
{
    _Interlocked_ LONG data;
} DATA;

void Safe(DATA* p)
{
    InterlockedIncrement(&p->data); // OK
}

void Unsafe(DATA* p)
{
    p->data += 1; // Warning C26101
    EnterCriticalSection(&cs);
    LeaveCriticalSection(&cs);
}