std::unique_lock::try_lock_for

std::unique_lock::try_lock_for

template< class Rep, class Period >
bool try_lock_for( const std::chrono::duration<Rep,Period>& timeout_duration );
(since C++11)

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.

Parameters

timeout_duration - maximum duration to block for

Return value

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

Exceptions

Example

See also

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

© cppreference.com
Licensed under the Creative Commons Attribution-ShareAlike Unported License v3.0.
http://en.cppreference.com/w/cpp/thread/unique_lock/try_lock_for

在线笔记
App下载
App下载

扫描二维码

下载编程狮App

公众号
微信公众号

编程狮公众号

意见反馈
返回顶部