Spec-Zone.ru › C++

std::shared_mutex::try_lock_shared

bool try_lock_shared();
(since C++17)

Попытка заблокировать мьютекс в режиме совместного доступа. Возвращает значение немедленно. При успешном получении блокировки возвращает true, в противном случае возвращает false.

Эта функция может ошибочно возвращать false даже если мьютекс в данный момент не заблокирован никаким другим потоком в эксклюзивном режиме.

Предыдущая операция unlock() над тем же мьютексом синхронизируется с (как определено в std::memory_order) этой операцией, если она возвращает true.

Поведение неопределено, если вызывающий поток уже владеет мьютексом в любом режиме.

Параметры

(нет)

Возвращаемое значение

true в случае успешного получения блокировки, в противном случае false.

Исключения

Не выбрасывает никаких исключений.

Пример

См. также

lock
блокирует мьютекс, блокируется, если мьютекс недоступен
(публичный член-функция)
try_lock
пытается заблокировать мьютекс, возвращает значение, если мьютекс недоступен
(публичный член-функция)
unlock_shared
разблокирует мьютекс (совместное владение)
(публичный член-функция)

© 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

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API