C++ named requirements: TimedLockable (since C++11)
|
|
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Die TimedLockable Anforderungen beschreiben die Eigenschaften von Typen, die zeitgesteuerte exklusive Blockierungssemantik für Ausführungsagenten (Threads, Prozesse, Tasks) bereitstellen.
Inhaltsverzeichnis |
Anforderungen
Damit Typ
L
TimedLockable
ist, müssen gegeben sein
-
rel_time, ein Wert einer Spezialisierung von std::chrono::duration , und -
abs_time, ein Wert einer Spezialisierung von std::chrono::time_point ,
die folgenden Bedingungen müssen für ein Objekt
m
vom Typ
L
erfüllt sein:
| Ausdruck | Effekte | Rückgabewert |
|---|---|---|
| m. try_lock_for ( rel_time ) |
Blockiert für die angegebene Dauer
rel_time
oder bis eine Sperre auf
m
erworben wird.
|
true falls die Sperre erworben wurde, false andernfalls. |
| m. try_lock_until ( abs_time ) |
Blockiert bis der angegebene Zeitpunkt
abs_time
erreicht ist oder eine Sperre auf
m
erworben wird.
|
true falls die Sperre erworben wurde, false andernfalls. |
Hinweise
Die
try_lock_for
und
try_lock_until
Memberfunktionen erlangen bei Erfolg eine exklusive Sperre auf
m
.
Standardbibliothek
Die folgenden Standardbibliothekstypen erfüllen TimedLockable :
|
(C++11)
|
Bietet eine gegenseitige Ausschlusseinrichtung, die das Sperren mit Timeout implementiert
(Klasse) |
|
(C++11)
|
Bietet eine gegenseitige Ausschlusseinrichtung, die rekursiv
durch denselben Thread gesperrt werden kann und das Sperren mit Timeout implementiert (Klasse) |
|
(C++14)
|
Bietet eine gemeinsame gegenseitige Ausschlusseinrichtung und implementiert das Sperren mit Timeout
(Klasse) |