C++ named requirements: Lockable (since C++11)
From cppreference.net
C++
C++ named requirements
|
|
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Les exigences Lockable étendent les exigences BasicLockable pour inclure la tentative de verrouillage.
Table des matières |
Exigences
Pour que le type
L
soit
Lockable
, il doit satisfaire à la condition ci-dessus ainsi qu'à la suivante :
| Expression | Effets | Valeur de retour |
|---|---|---|
| m. try_lock ( ) | Tente d'acquérir le verrou pour l'agent d'exécution actuel (thread, processus, tâche) sans bloquer. Si une exception est levée, aucun verrou n'est obtenu. | true si le verrou a été acquis, false sinon |
Notes
La fonction membre
try_lock
obtient un verrou non partagé sur
m
en cas de succès.
Bibliothèque standard
Les types suivants de la bibliothèque standard satisfont les exigences Lockable :
|
(C++11)
|
fournit une fonctionnalité d'exclusion mutuelle de base
(classe) |
|
(C++11)
|
fournit une fonctionnalité d'exclusion mutuelle pouvant être verrouillée récursivement par le même thread
(classe) |
|
(C++11)
|
fournit une fonctionnalité d'exclusion mutuelle pouvant être verrouillée récursivement
par le même thread et implémente le verrouillage avec un délai d'expiration (classe) |
|
(C++17)
|
fournit une fonctionnalité d'exclusion mutuelle partagée
(classe) |
|
(C++14)
|
fournit une fonctionnalité d'exclusion mutuelle partagée et implémente le verrouillage avec un délai d'expiration
(classe) |
|
(C++11)
|
fournit une fonctionnalité d'exclusion mutuelle qui implémente le verrouillage avec un délai d'expiration
(classe) |