std::counting_semaphore<LeastMaxValue>:: try_acquire_for
|
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Member functions | ||||
| Operations | ||||
|
counting_semaphore::try_acquire_for
|
||||
| Constants | ||||
|
template
<
class
Rep,
class
Period
>
bool try_acquire_for ( const std:: chrono :: duration < Rep, Period > & rel_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 la durée rel_time ait été dépassée.
Table des matières |
Préconditions
(aucun)
Paramètres
| rel_time | - | la durée minimale que la fonction doit attendre pour é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 rel_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 jusqu'à un instant donné
(fonction membre publique) |