C26101
Advertencia C26101: La operación de interbloqueos no se usó correctamente para la variable <variable>.
Las API de Windows proporcionan una serie de operaciones entrelazadas.La anotación _Interlocked_ especifica que sólo se debe obtener acceso a una variable a través de una operación entrelazada.Se emite la advertencia C26101 cuando un acceso no es coherente con la anotación _Interlocked_.
Ejemplo
El siguiente ejemplo genera la advertencia C26101 porque hay una infracción del contrato _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);
}