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) |