Warnung C26112
Der Anrufer kann keine Sperre vor dem Aufrufen von "func" halten.
Die Anmerkung _Requires_no_locks_held_
stellt eine Voraussetzung fest, dass der Aufrufer keine Sperre halten darf, während sie die Funktion aufruft. Warnung C26112 wird ausgegeben, wenn eine Funktion nicht alle Sperren loslassen kann, bevor sie eine andere Funktion aufruft.
Beispiel
Im folgenden Beispiel wird die Warnung C26112 generiert, da die _Requires_no_locks_held_
Voraussetzung durch den Aufruf NoLocksAllowed
innerhalb des gesperrten Abschnitts verletzt wird.
typedef struct _DATA
{
CRITICAL_SECTION cs;
} DATA;
_Requires_no_locks_held_
void NoLocksAllowed(DATA* p)
{
// Lock sensitive operations here
}
void LocksHeldFunction(DATA* p)
{
EnterCriticalSection(&p->cs);
NoLocksAllowed(p); // Warning C26112
LeaveCriticalSection(&p->cs);
}
Feedback
https://aka.ms/ContentUserFeedback.
Bald verfügbar: Im Laufe des Jahres 2024 werden wir GitHub-Issues stufenweise als Feedbackmechanismus für Inhalte abbauen und durch ein neues Feedbacksystem ersetzen. Weitere Informationen finden Sie unterFeedback senden und anzeigen für