Remarque
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de vous connecter ou de modifier des répertoires.
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de modifier des répertoires.
L’appelant ne parvient pas à maintenir le verrou « lock » avant d’appeler la fonction « func ».
Remarques
Lorsqu’un verrou est requis, veillez à clarifier si la fonction elle-même ou son appelant doit acquérir le verrou. Avertissement C26110 est émis en cas de violation de l’annotation _Requires_lock_held_ ou d’autres annotations liées au verrouillage. Pour plus d’informations, consultez Annoter le comportement de verrouillage
Exemple
Dans l’exemple suivant, l’avertissement C26110 est généré, car l’annotation _Requires_lock_held_ sur la fonction LockRequired indique que l’appelant de LockRequired doit acquérir le verrou avant d’appeler LockRequired. Sans cette annotation, LockRequired il faut acquérir le verrou avant d’accéder à toutes les données partagées protégées par le verrou.
typedef struct _DATA
{
CRITICAL_SECTION cs;
int d;
} DATA;
_Requires_lock_held_(p->cs)
void LockRequired(DATA* p)
{
p->d = 0;
}
void LockNotHeld(DATA* p)
{
LockRequired(p); // Warning C26110
}