C++ 命名需求: SharedTimedLockable (C++14 起)
来自 cppreference.cn
SharedTimedLockable 需求描述了为执行代理(线程、进程、任务)提供带时间限制的共享阻塞语义的类型的特性。
目录 |
[编辑] 要求
对于类型 L
而言,若要成为 SharedTimedLockable,给定
-
rel_time
,一个 std::chrono::duration 特化类型的值,以及 -
abs_time
,一个 std::chrono::time_point 特化类型的值,
则对于类型 L
的对象 m
,必须满足以下条件:
表达式 | 要求 | 返回值 |
---|---|---|
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) |
提供共享互斥设施,并实现带超时锁 (类) |