Namespaces
Variants

std::shared_mutex:: try_lock

From cppreference.net

Concurrency support library
Threads
(C++11)
(C++20)
this_thread namespace
(C++11)
(C++11)
Cooperative cancellation
Mutual exclusion
Generic lock management
Condition variables
(C++11)
Semaphores
Latches and Barriers
(C++20)
(C++20)
Futures
(C++11)
(C++11)
(C++11)
Safe reclamation
Hazard pointers
Atomic types
(C++11)
(C++20)
Initialization of atomic types
(C++11) (deprecated in C++20)
(C++11) (deprecated in C++20)
Memory ordering
(C++11) (deprecated in C++26)
Free functions for atomic operations
Free functions for atomic flags
bool try_lock ( ) ;
(seit C++17)

Versucht, den Mutex zu sperren. Gibt sofort zurück. Bei erfolgreichem Sperren gibt true zurück, andernfalls wird false zurückgegeben.

Diese Funktion kann sporadisch fehlschlagen und false zurückgeben, selbst wenn das Mutex derzeit von keinem anderen Thread gesperrt ist.

Wenn try_lock von einem Thread aufgerufen wird, der den mutex bereits in einem beliebigen Modus (shared oder exclusive) besitzt, ist das Verhalten undefiniert.

Eine vorherige unlock() -Operation auf demselben Mutex synchronisiert mit (wie definiert in std::memory_order ) dieser Operation, falls sie true zurückgibt. Beachten Sie, dass eine vorherige lock() -Operation nicht mit dieser Operation synchronisiert, falls sie false zurückgibt.

Inhaltsverzeichnis

Parameter

(keine)

Rückgabewert

true wenn die Sperre erfolgreich erworben wurde, andernfalls false .

Ausnahmen

Wirft nichts.

Beispiel

Siehe auch

sperrt das Mutex, blockiert falls das Mutex nicht verfügbar ist
(öffentliche Elementfunktion)
entsperrt das Mutex
(öffentliche Elementfunktion)
C-Dokumentation für mtx_trylock