Partager via


unique_lock::unique_lock, constructeur

Construit un objet unique_lock.

unique_lock() noexcept;
unique_lock(unique_lock&& Other) noexcept;
explicit unique_lock(mutex_type& Mtx);
unique_lock(mutex_type& Mtx, adopt_lock_t Adopt);
unique_lock(mutex_type& Mtx, defer_lock_t Defer) noexcept;
unique_lock(mutex_type& Mtx, try_to_lock_t Try);
template<class Rep, class Period>
   unique_lock(mutex_type& Mtx,
      const chrono::duration<Rep, Period> Rel_time);
template<class Clock, class Duration>
   unique_lock(mutex_type& Mtx,
      const chrono::time_point<Clock, Duration> Abs_time);
unique_lock(mutex_type& Mtx,
   const xtime *Abs_time) noexcept;

Paramètres

  • Mtx
    Un objet de type mutex.

  • 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.

  • 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.

  • Other
    Objet unique_lock.

Notes

Le premier constructeur construit un objet qui a une valeur de pointeur associé à la valeur de pointeur mutex 0.

Le deuxième constructeur déplace l'état mutex assucié de Other. Après le déplacement, Other ne sont plus associés à un mutex.

Les constructeurs restants stockent &Mtx en tant que le pointeur mutex stocké. La propriété du mutex est déterminée par le troisième argument, si il existe.

No argument

La propriété est obtenue en appelant la méthode lock sur l'objet mutex associé.

Adopt

La propriété est supposée. Mtxdoit se trouver vérouillée quand le constructeur est appelé.

Defer

Le thread appelant est supposé de pas posséder l'objet mutex. Mtx ne doit pas se trouver vérouillé quand le constructeur est appelé.

Try

La propriété est déterminée en appelant try_lock sur l'objet mutex associé. Le constructeur ne renvoie rien.

Rel_time

La propriété est déterminée en appelant try_lock_for(Rel_time).

Abs_time

La propriété est déterminée en appelant try_lock_until(Abs_time).

Configuration requise

En-tête : mutex

Espace de noms : std

Voir aussi

Référence

unique_lock, classe

<mutex>