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

std::shared_lock

Defined in header <shared_mutex>

?

?

template< class Mutex > class shared_lock;

?

(since C++14)

全班shared_lock是一个通用的共享互斥锁所有权包装器,允许延迟锁定、定时锁定和锁所有权的传输。锁定shared_lock将关联的共享互斥锁在共享模式%28中,以将其锁定为独占模式,std::unique_lock可以使用%29。

shared_lock类是可移动的,但不可复制--它符合MoveConstructibleMoveAssignable但不是CopyConstructibleCopyAssignable...

为了在共享的互斥对象中等待共享所有权模式,std::condition_variable_any可以使用%28std::condition_variable要求std::unique_lock因此只能在唯一的所有权模式%29中等待。

模板参数

Mutex

-

the type of the shared mutex to lock. The type must meet the SharedMutex requirements

成员类型

Type

Definition

mutex_type

Mutex

成员函数

(constructor)

constructs a shared_lock, optionally locking the supplied mutex (public member function)

(destructor)

unlocks the associated mutex (public member function)

operator=

unlocks the mutex, if owned, and acquires ownership of another (public member function)

共享锁定

锁锁关联的互斥体%28公共成员函数%29

试一试[医]锁试图锁定关联的互斥体%28公共成员函数%29

试一试[医]锁[医]对于试图锁定关联互斥对象,在指定的持续时间%28公共成员函数%29

试一试[医]锁[医]直到尝试锁定关联的互斥对象,直到指定的时间点%28公共成员函数%29

解锁相关互斥锁%28公共成员函数%29

修饰符

用另一个共享交换数据成员[医]锁定%28公共成员功能%29

释放互斥锁而不解锁%28公共成员函数%29

观察员

互斥锁返回指向关联的互斥量%28公共成员函数%29的指针。

拥有[医]锁测试锁是否拥有其关联的互斥量%28公共成员函数%29

运算符bool测试锁是否拥有其关联的互斥体%28公共成员函数%29。

非会员职能

std::swap(std::shared_lock)

specialization of std::swap for shared_lock (function template)

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

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

扫码关注腾讯云开发者

领取腾讯云代金券

http://www.vxiaotou.com