Namespaces
Variants
Views
Actions

std::unique_lock::try_lock_for

From cppreference.com
< cpp‎ | thread‎ | unique lock
Revision as of 17:44, 2 November 2012 by P12bot (Talk | contribs)

 
 
Thread support library
Threads
(C++11)
this_thread namespace
(C++11)
(C++11)
(C++11)
Mutual exclusion
(C++11)
Generic lock management
(C++11)
(C++11)
(C++11)
(C++11)(C++11)(C++11)
(C++11)
(C++11)
Condition variables
(C++11)
Futures
(C++11)
(C++11)
(C++11)
(C++11)
 
 

Template:ddcl list begin <tr class="t-dcl ">

<td >
template< class Rep, class Period >
bool try_lock_for( const std::chrono::duration<Rep,Period>& timeout_duration );
</td>

<td class="t-dcl-nopad"> </td> <td > (since C++11) </td> </tr> Template:ddcl list end

Tries to lock the associated mutex. Blocks until specified timeout_duration has elapsed or the lock is acquired, whichever comes first. On successful lock acquisition returns true, otherwise returns false. Effectively calls mutex()->try_lock_for(timeout_duration).

A steady clock is used to measure the duration. This function may block for longer than timeout_duration due to scheduling or resource contention delays.

std::system_error is thrown if there is no associated mutex or if the mutex is already locked.

Contents

Parameters

timeout_duration - maximum duration to block for

Return value

true if the ownership of the mutex has been acquired successfully, false otherwise.

Exceptions

  • Any exceptions thrown by mutex()->try_lock_for(timeout_duration)

Example

See also

locks the associated mutex
(public member function) [edit]
tries to lock the associated mutex, returns if the mutex is not available
(public member function) [edit]
tries to lock the associated TimedLockable mutex, returns if the mutex has been unavailable until specified time point has been reached
(public member function) [edit]
unlocks the associated mutex
(public member function) [edit]