std::shared_mutex::try_lock_shared
bool try_lock_shared(); |
(since C++17) |
Попытка заблокировать мьютекс в режиме совместного доступа. Возвращает значение немедленно. При успешном получении блокировки возвращает true, в противном случае возвращает false.
Эта функция может ошибочно возвращать false даже если мьютекс в данный момент не заблокирован никаким другим потоком в эксклюзивном режиме.
Предыдущая операция unlock() над тем же мьютексом синхронизируется с (как определено в std::memory_order) этой операцией, если она возвращает true.
Поведение неопределено, если вызывающий поток уже владеет мьютексом в любом режиме.
Параметры
(нет)
Возвращаемое значение
true в случае успешного получения блокировки, в противном случае false.
Исключения
Не выбрасывает никаких исключений.
Пример
См. также
|
блокирует мьютекс, блокируется, если мьютекс недоступен (публичный член-функция) |
|
|
пытается заблокировать мьютекс, возвращает значение, если мьютекс недоступен (публичный член-функция) |
|
|
разблокирует мьютекс (совместное владение) (публичный член-функция) |
© cppreference.com
Licensed under the Creative Commons Attribution-ShareAlike Unported License v3.0.
https://en.cppreference.com/w/cpp/thread/shared_mutex/try_lock_shared