std::scoped_lock::scoped_lock
explicit scoped_lock( MutexTypes&... m ); | (1) | (since C++17) |
|---|---|---|
scoped_lock( MutexTypes&... m, std::adopt_lock_t t ); | (2) | (since C++17) |
scoped_lock( const scoped_lock& ) = delete; | (3) | (since C++17) |
获取给定互斥对象的所有权。m...
1%29sizeof...(MutexTypes) == 0什么都不做。否则,如果sizeof...(MutexTypes) == 1,有效地调用m.lock().否则,有效地打电话std::lock(m...)如果MutexTypes不是递归互斥,并且当前线程已经拥有相应的参数。m......
2%29获取互斥体的所有权m...而不试图锁定他们中的任何一个。除非当前线程拥有m......
3%29复制构造函数被删除。
如果m在scoped_lock对象是。
参数
m | - | mutexes to acquire ownership of |
|---|---|---|
t | - | tag parameter used to select non-locking version of the constructor |
例外
1%29抛出由m.lock()
2%29
© cppreference.com在CreativeCommonsAttribution下授权-ShareAlike未移植许可v3.0。
本文档系腾讯云开发者社区成员共同维护,如有问题请联系 cloudcommunity@tencent.com

