Namensräume
Varianten
Aktionen

std::shared_lock<Mutex>::try_lock_until

Von cppreference.com
< cpp‎ | thread‎ | shared lock
 
 
Bibliothek für nebenläufige Programmierung
Threads
(C++11)
(C++20)
this_thread Namespace
(C++11)
(C++11)
(C++11)
Kooperatives Beenden
Gegenseitiger Ausschluss
(C++11)
Allgemeines Sperrungsmanagement
(C++11)
(C++11)
(C++11)
(C++11)
(C++11)
Bedingungsvariablen
(C++11)
Semaphoren
Latches und Barriers
(C++20)
(C++20)
Futures
(C++11)
(C++11)
(C++11)
(C++11)
Sichere Wiederherstellung
(C++26)
Hazard Pointer
Atomare Typen
(C++11)
(C++20)
Initialisierung von atomaren Typen
(C++11)(veraltet in C++20)
(C++11)(veraltet in C++20)
Speicherordnung
(C++11)(deprecated in C++26)
Freie Funktionen für atomare Operationen
Freie Funktionen für atomare Flags
 
 
template< class Clock, class Duration >
bool try_lock_until( const std::chrono::time_point<Clock,Duration>& timeout_time );
(seit C++14)

Versucht, das zugehörige Mutex im Shared-Modus zu sperren. Blockiert, bis die angegebene timeout_time erreicht ist oder die Sperre erworben wurde, je nachdem, was zuerst eintritt. Bei erfolgreichem Erwerb der Sperre wird true zurückgegeben, andernfalls false. Kann länger blockieren als bis timeout_time erreicht ist.

Ruft effektiv mutex()->try_lock_shared_until(timeout_time) auf.

std::system_error wird ausgelöst, wenn kein zugehöriger Mutex vorhanden ist oder wenn der Mutex bereits gesperrt ist.

Clock muss die Clock-Anforderungen erfüllen. Das Verhalten ist undefiniert, wenn Mutex die SharedTimedLockable-Anforderungen nicht erfüllt. Das Programm ist schlecht formuliert, wenn std::chrono::is_clock_v<Clock> false ist.(seit C++20)

Inhalt

[bearbeiten] Parameter

timeout_time - maximaler Zeitpunkt, bis zu dem blockiert werden soll

[bearbeiten] Rückgabewert

true, wenn der Besitz des Mutex erfolgreich erworben wurde, andernfalls false.

[bearbeiten] Ausnahmen

  • Alle Ausnahmen, die von mutex()->try_lock_shared_for(timeout_time) ausgelöst werden.

[bearbeiten] Beispiel

[bearbeiten] Siehe auch

sperrt den zugehörigen Mutex
(public member function) [edit]
versucht, den zugehörigen Mutex zu sperren
(public member function) [edit]
versucht, den zugehörigen Mutex für die angegebene Dauer zu sperren
(public member function) [edit]
entsperrt den zugehörigen Mutex
(public member function) [edit]
versucht, den zugehörigen TimedLockable Mutex zu sperren (d.h. den Besitz zu übernehmen) und kehrt zurück, wenn der Mutex bis zum Erreichen des angegebenen Zeitpunkts nicht verfügbar war
(public member function of std::unique_lock<Mutex>) [bearbeiten]