|
template<typename _Callable > |
void | std::__once_call_impl () |
|
void | std::__once_proxy (void) |
|
template<typename _Lock > |
unique_lock< _Lock > | std::__try_to_lock (_Lock &__l) |
|
template<typename _Callable , typename... _Args> |
void | std::call_once (once_flag &__once, _Callable &&__f, _Args &&...__args) |
|
template<typename _L1 , typename _L2 , typename... _L3> |
void | std::lock (_L1 &__l1, _L2 &__l2, _L3 &...__l3) |
|
template<typename _Mutex > |
void | std::swap (unique_lock< _Mutex > &__x, unique_lock< _Mutex > &__y) noexcept |
|
template<typename _Lock1 , typename _Lock2 , typename... _Lock3> |
int | std::try_lock (_Lock1 &__l1, _Lock2 &__l2, _Lock3 &...__l3) |
|
Classes for mutex support.
#define __cpp_lib_shared_timed_mutex |
Swap specialization for shared_lock.
Definition at line 55 of file shared_mutex.
template<typename _Callable , typename... _Args>
void std::call_once |
( |
once_flag & |
__once, |
|
|
_Callable && |
__f, |
|
|
_Args &&... |
__args |
|
) |
| |
call_once
Definition at line 723 of file mutex.
template<typename _L1 , typename _L2 , typename... _L3>
void std::lock |
( |
_L1 & |
__l1, |
|
|
_L2 & |
__l2, |
|
|
_L3 &... |
__l3 |
|
) |
| |
Generic lock.
- Parameters
-
__l1 | Meets Mutex requirements (try_lock() may throw). |
__l2 | Meets Mutex requirements (try_lock() may throw). |
__l3 | Meets Mutex requirements (try_lock() may throw). |
- Exceptions
-
An | exception thrown by an argument's lock() or try_lock() member. |
- Postcondition
- All arguments are locked.
All arguments are locked via a sequence of calls to lock(), try_lock() and unlock(). If the call exits via an exception any locks that were obtained will be released.
Definition at line 659 of file mutex.
Referenced by std::dynamic_pointer_cast().
template<typename _Mutex >
Swap overload for unique_lock objects.
Definition at line 581 of file mutex.
template<typename _Mutex >
Swap specialization for shared_lock.
Definition at line 596 of file shared_mutex.
template<typename _Lock1 , typename _Lock2 , typename... _Lock3>
int std::try_lock |
( |
_Lock1 & |
__l1, |
|
|
_Lock2 & |
__l2, |
|
|
_Lock3 &... |
__l3 |
|
) |
| |
Generic try_lock.
- Parameters
-
__l1 | Meets Mutex requirements (try_lock() may throw). |
__l2 | Meets Mutex requirements (try_lock() may throw). |
__l3 | Meets Mutex requirements (try_lock() may throw). |
- Returns
- Returns -1 if all try_lock() calls return true. Otherwise returns a 0-based index corresponding to the argument that returned false.
- Postcondition
- Either all arguments are locked, or none will be.
Sequentially calls try_lock() on each argument.
Definition at line 638 of file mutex.
constexpr adopt_lock_t std::adopt_lock |
Tag used to make a scoped lock take ownership of a locked mutex.
Definition at line 370 of file mutex.
constexpr defer_lock_t std::defer_lock |
Tag used to prevent a scoped lock from acquiring ownership of a mutex.
Definition at line 364 of file mutex.
constexpr try_to_lock_t std::try_to_lock |
Tag used to prevent a scoped lock from blocking if a mutex is locked.
Definition at line 367 of file mutex.