Advertencia C26101
No se puede usar correctamente la operación interbloqueada para la variable "var".
Las API de Windows ofrecen varias operaciones interbloqueadas. La anotación _Interlocked_
especifica que solo se debe tener acceso a una variable mediante una operación interbloqueada. Advertencia C26101 se emite cuando un acceso de variable no es coherente con la _Interlocked_
anotación.
En el ejemplo siguiente se genera la advertencia C26101 porque hay una infracción del _Interlocked_
contrato.
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);
}