C++ named requirements: SharedTimedLockable (since C++14)
|
|
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Требования SharedTimedLockable описывают характеристики типов, которые предоставляют синхронизированную блокировку с таймаутом для исполнительных агентов (потоков, процессов, задач).
Содержание |
Требования
Для типа
L
чтобы быть
SharedTimedLockable
, при условии
-
rel_time, значение специализации std::chrono::duration , и -
abs_time, значение специализации std::chrono::time_point ,
для объекта
m
типа
L
должны выполняться следующие условия:
| Выражение | Требования | Возвращаемое значение |
|---|---|---|
| m. try_lock_shared_for ( rel_time ) |
Блокируется на указанную длительность
rel_time
или до получения блокировки на
m
.
|
true если блокировка была получена, false в противном случае. |
| m. try_lock_shared_until ( abs_time ) |
Блокируется до достижения указанной временной точки
abs_time
или получения блокировки на
m
.
|
true если блокировка была получена, false в противном случае. |
Примечания
Функции-члены
try_lock_shared_for
и
try_lock_shared_until
получают общую блокировку на
m
при успешном выполнении.
Стандартная библиотека
Следующие стандартные типы библиотеки удовлетворяют SharedTimedLockable требованиям:
|
(C++14)
|
предоставляет механизм совместной взаимной блокировки и реализует блокировку с таймаутом
(класс) |