std::counting_semaphore<LeastMaxValue>:: try_acquire_until
|
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Member functions | ||||
| Operations | ||||
|
counting_semaphore::try_acquire_until
|
||||
| Constants | ||||
|
template
<
class
Clock,
class
Duration
>
bool try_acquire_until ( const std:: chrono :: time_point < Clock, Duration > & abs_time ) ; |
(depuis C++20) | |
Tente de décrémenter atomiquement le compteur interne de 1 s'il est supérieur à 0 ; sinon se bloque jusqu'à ce qu'il soit supérieur à 0 et puisse décrémenter avec succès le compteur interne, ou que le point temporel abs_time ait été dépassé.
Le programme est mal formé si std:: chrono :: is_clock_v < Clock > est false .
Table des matières |
Préconditions
Clock
satisfait aux exigences
Clock
.
Paramètres
| abs_time | - | le premier délai auquel la fonction doit attendre avant d'échouer |
Valeur de retour
true s'il a décrémenté le compteur interne, sinon false .
Exceptions
Peut lever std::system_error ou une exception liée au délai d'attente.
Notes
En pratique, la fonction peut prendre plus de temps que abs_time pour échouer.
Voir aussi
|
incrémente le compteur interne et débloque les acquéreurs
(fonction membre publique) |
|
|
décrémente le compteur interne ou bloque jusqu'à ce que cela soit possible
(fonction membre publique) |
|
|
tente de décrémenter le compteur interne sans bloquer
(fonction membre publique) |
|
|
tente de décrémenter le compteur interne, en bloquant pendant une durée maximale
(fonction membre publique) |