std::unique_lock<Mutex>:: try_lock_until
|
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Member functions | ||||
| Locking | ||||
|
unique_lock::try_lock_until
|
||||
| Modifiers | ||||
| Observers | ||||
| Non-member functions | ||||
|
template
<
class
Clock,
class
Duration
>
bool try_lock_until ( const std:: chrono :: time_point < Clock, Duration > & timeout_time ) ; |
(C++11以降) | |
関連するミューテックスのロック取得(つまり所有権の獲得)を試みます。指定された timeout_time に達するか、ロックが取得されるか、いずれか早い方までブロックします。ロックの取得に成功した場合は true を返し、それ以外の場合は false を返します。 timeout_time が経過するよりも長くブロックされる可能性があります。
効果的に mutex ( ) - > try_lock_until ( timeout_time ) を呼び出します。
std::system_error は、関連付けられたミューテックスが存在しない場合、または同じスレッドによってミューテックスが既にロックされている場合にスローされます。
Clock
は
Clock
要件を満たさなければならない。
std::
chrono
::
is_clock_v
<
Clock
>
が
false
の場合、プログラムは不適格である。
(C++20以降)
目次 |
パラメータ
| timeout_time | - | ブロックする最大時間ポイント |
戻り値
true ミューテックスの所有権が正常に取得された場合、 false それ以外の場合。
例外
- mutex ( ) - > try_lock_until ( timeout_time ) によってスローされる例外。
- 関連付けられたミューテックスが存在しない場合、 std::system_error が std::errc::operation_not_permitted のエラーコードで送出されます。
- ミューテックスが既にロックされている場合、 std::system_error が std::errc::resource_deadlock_would_occur のエラーコードでスローされる。
例
|
このセクションは不完全です
理由: 例がありません |
関連項目
|
関連付けられたミューテックスのロックを取得する(つまり所有権を取得する)
(public member function) |
|
|
ブロッキングせずに関連付けられたミューテックスのロックを試みる(つまり所有権を取得する)
(public member function) |
|
|
関連付けられた
TimedLockable
ミューテックスのロックを試みる(つまり所有権を取得する)、指定された時間ミューテックスが利用できない場合は返る
(public member function) |
|
|
関連付けられたミューテックスのロックを解除する(つまり所有権を解放する)
(public member function) |