C++ 命名要求: SharedTimedLockable (C++14 起)
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
上的共享锁。