std::timed_mutex::try_lock
Материал из cppreference.com
bool try_lock(); |
(начиная с C++11) | |
Пытается заблокировать мьютекс. Возврат происходит немедленно. В случае успешной установки блокировки возвращается true, в противном случае возвращается false.
Параметры
(нет)
Возвращаемое значение
true, если блокировка была установлена, в противном случае - false.
Исключения
| Этот раздел не завершён |
Пример
Этот пример демонстрирует использование lock, try_lock и unlock
Запустить этот код
#include <iostream>
#include <mutex>
int main()
{
std::mutex test;
if (test.try_lock()==true)
std::cout << "блокировка установлена" << std::endl;
else
std::cout << "блокировка не установлена" << std::endl;
test.unlock(); //теперь разблокируем мьютекс
test.lock(); //заблокируем его снова
if (test.try_lock()) //true можно опустить
std::cout << "блокировка установлена" << std::endl;
else
std::cout << "блокировка не установлена" << std::endl;
test.lock(); //и последнее (заблокируем)
}
Вывод:
блокировка установлена
блокировка не установлена
(программа аварийно завершается)
См. также
| блокирует мьютекс, блокируется, если мьютекс недоступен (public функция-элемент) | |
пытается заблокировать мьютекс, возвращается, если мьютекс имеет been unavailable за указанный период тайм-аута Оригинал: tries to lock the mutex, returns if the mutex has been unavailable for the specified timeout duration Текст был переведён автоматически используя Переводчик Google. Вы можете проверить и исправить перевод. Для инструкций щёлкните сюда. (public функция-элемент) | |
пытается заблокировать мьютекс, возвращается, если мьютекс имеет been unavailable до указанного момента времени была достигнута Оригинал: tries to lock the mutex, returns if the mutex has been unavailable until specified time point has been reached Текст был переведён автоматически используя Переводчик Google. Вы можете проверить и исправить перевод. Для инструкций щёлкните сюда. (public функция-элемент) | |
| разблокирует мьютекс (public функция-элемент) |