首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

std::unique_lock::try_lock_until

template< class Clock, class Duration > bool try_lock_until( const std::chrono::time_point<Clock,Duration>& timeout_time );

?

(since C++11)

试图锁定相关的互斥对象。块,直到指定timeout_time已到达或已获得锁,两者以第一位为准。关于成功锁定获取返回true,否则返回false.可能会阻塞更长的时间直到timeout_time已经联系到了。

有效呼叫mutex()->try_lock_until(timeout_time)...

std::system_error如果没有关联的互斥对象,或者互斥对象已经锁定,则引发。

参数

timeout_time

-

maximum time point to block until

返回值

true如果互斥体的所有权已经成功获得,false否则。

例外

  • 引发的任何异常mutex()->try_lock_for(timeout_time)
  • 如果没有关联的互斥,std::system_error错误代码为std::errc::operation_not_permitted
  • 如果互斥锁已经锁定,std::system_error错误代码为std::errc::resource_deadlock_would_occur

另见

lock

locks the associated mutex (public member function)

try_lock

tries to lock the associated mutex, returns if the mutex is not available (public member function)

try_lock_for

attempts to lock the associated TimedLockable mutex, returns if the mutex has been unavailable for the specified time duration (public member function)

unlock

unlocks the associated mutex (public member function)

代码语言:txt
复制
 ? cppreference.com

在CreativeCommonsAttribution下授权-ShareAlike未移植许可v3.0。

扫码关注腾讯云开发者

领取腾讯云代金券

http://www.vxiaotou.com