C++ named requirements: SharedTimedLockable (since C++14)
From cppreference.net
C++
C++ named requirements
|
|
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
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)
|
共有相互排他機能を提供し、タイムアウト付きロックを実装する
(クラス) |