timed_mutex, classe
Représente un type mutex limité dans le temps. Les objets de ce type permettent d’appliquer une exclusion mutuelle (mutex) via un blocage limité dans le temps dans un programme.
Syntaxe
class timed_mutex;
Membres
Constructeurs publics
Nom | Description |
---|---|
timed_mutex | Construit un objet timed_mutex qui n’est pas verrouillé. |
timed_mutex::~timed_mutex, destructeur | Libère les ressources utilisées par l’objet timed_mutex . |
Méthodes publiques
Nom | Description |
---|---|
lock | Bloque le thread appelant jusqu'à ce que le thread obtienne la propriété du mutex . |
try_lock | Tente d'obtenir la propriété de la référence mutex sans se bloquer. |
try_lock_for | Tente d’obtenir la propriété du mutex pour un intervalle de temps spécifié. |
try_lock_until | Tente d’obtenir la propriété du mutex jusqu’à une heure spécifiée. |
unlock | Libère la propriété du mutex . |
Spécifications
Header :<mutex>
Espace de noms : std
timed_mutex ::lock
Bloque le thread appelant jusqu'à ce que le thread obtienne la propriété du mutex
.
void lock();
Notes
Si le thread appelant possède déjà mutex
, le comportement est indéfini.
timed_mutex::timed_mutex, constructeur
Construit un objet timed_mutex
qui n’est pas verrouillé.
timed_mutex();
timed_mutex::~timed_mutex, destructeur
Libère les ressources utilisées par l’objet mutex
.
~timed_mutex();
Notes
Si l'objet est verrouillé lorsque le destructeur s'exécute, le comportement est indéfini.
timed_mutex ::try_lock
Tente d'obtenir la propriété de la référence mutex
sans se bloquer.
bool try_lock();
Valeur de retour
true
si la méthode obtient correctement la propriété du mutex
; sinon, false
.
Notes
Si le thread appelant possède déjà mutex
, le comportement est indéfini.
timed_mutex ::try_lock_for
Tente d'obtenir la propriété de la référence mutex
sans se bloquer.
template <class Rep, class Period>
bool try_lock_for(const chrono::duration<Rep, Period>& Rel_time);
Paramètres
Rel_time
Objet chrono::duration qui spécifie la durée maximale pendant laquelle la méthode essaie d’obtenir la propriété du mutex
.
Valeur de retour
true
si la méthode obtient correctement la propriété du mutex
; sinon, false
.
Notes
Si le thread appelant possède déjà mutex
, le comportement est indéfini.
timed_mutex ::try_lock_until
Tente d'obtenir la propriété de la référence mutex
sans se bloquer.
template <class Clock, class Duration>
bool try_lock_for(const chrono::time_point<Clock, Duration>& Abs_time);
bool try_lock_until(const xtime* Abs_time);
Paramètres
Abs_time
Point dans le temps qui spécifie le seuil au-delà duquel la méthode ne tente plus d'obtenir la propriété du mutex
.
Valeur de retour
true
si la méthode obtient correctement la propriété du mutex
; sinon, false
.
Notes
Si le thread appelant possède déjà mutex
, le comportement est indéfini.
timed_mutex ::unlock
Libère la propriété du mutex
.
void unlock();
Notes
Si le thread appelant ne possède pas mutex
, le comportement est indéfini.
Voir aussi
Informations de référence sur les fichiers d’en-tête
<mutex>