Kommentar
Åtkomst till den här sidan kräver auktorisering. Du kan prova att logga in eller ändra kataloger.
Åtkomst till den här sidan kräver auktorisering. Du kan prova att ändra kataloger.
Påringaren misslyckades med att släppa låset innan funktionen anropades.
Anmärkningar
_Requires_lock_not_held_ Anteckningen medför en förutsättning för att antalet lås för det angivna låset inte får vara större än noll när funktionen anropas. Varning C26111 utfärdas när en funktion inte kan frigöra låset innan den anropar en annan funktion.
Example
I följande exempel genereras varning C26111 eftersom förhandsvillkoret _Requires_lock_not_held_ överträds av anropet till DoNotLock i det låsta avsnittet.
typedef struct _DATA
{
CRITICAL_SECTION cs;
int d;
} DATA;
_Requires_lock_not_held_(p->cs)
void DoNotLock(DATA* p)
{
EnterCriticalSection(&p->cs);
p->d = 0;
LeaveCriticalSection(&p->cs);
}
void LockedFunction(DATA* p)
{
EnterCriticalSection(&p->cs);
DoNotLock(p); // Warning C26111
LeaveCriticalSection(&p->cs);
}