std::unique_lock<Mutex>:: try_lock_until
|
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Member functions | ||||
| Locking | ||||
|
unique_lock::try_lock_until
|
||||
| Modifiers | ||||
| Observers | ||||
| Non-member functions | ||||
|
template
<
class
Clock,
class
Duration
>
bool try_lock_until ( const std:: chrono :: time_point < Clock, Duration > & timeout_time ) ; |
(depuis C++11) | |
Tente de verrouiller (c'est-à-dire de prendre la possession de) le mutex associé. Bloque jusqu'à ce que le timeout_time spécifié soit atteint ou que le verrou soit acquis, selon la première éventualité. Retourne true en cas de succès de l'acquisition du verrou, sinon retourne false . Peut bloquer plus longtemps que timeout_time jusqu'à ce qu'il soit atteint.
Appelle effectivement mutex ( ) - > try_lock_until ( timeout_time ) .
std::system_error est levée s'il n'y a pas de mutex associé ou si le mutex est déjà verrouillé par le même thread.
Clock
doit satisfaire aux exigences
Clock
.
Le programme est mal formé si
std::
chrono
::
is_clock_v
<
Clock
>
est
false
.
(depuis C++20)
Table des matières |
Paramètres
| timeout_time | - | point temporel maximum jusqu'auquel bloquer |
Valeur de retour
true si la propriété du mutex a été acquise avec succès, false sinon.
Exceptions
- Toute exception levée par mutex ( ) - > try_lock_until ( timeout_time ) .
- S'il n'y a pas de mutex associé, std::system_error avec un code d'erreur de std::errc::operation_not_permitted .
- Si le mutex est déjà verrouillé, std::system_error avec un code d'erreur de std::errc::resource_deadlock_would_occur .
Exemple
|
Cette section est incomplète
Raison : aucun exemple |
Voir aussi
|
verrouille (c'est-à-dire prend la possession de) le mutex associé
(fonction membre publique) |
|
|
tente de verrouiller (c'est-à-dire prend la possession de) le mutex associé sans bloquer
(fonction membre publique) |
|
|
tente de verrouiller (c'est-à-dire prend la possession de) le mutex
TimedLockable
associé, retourne si le mutex est resté indisponible pendant la durée spécifiée
(fonction membre publique) |
|
|
déverrouille (c'est-à-dire libère la possession de) le mutex associé
(fonction membre publique) |