mirror of
https://github.com/boostorg/thread.git
synced 2026-01-23 18:12:12 +00:00
36 lines
985 B
Plaintext
36 lines
985 B
Plaintext
[section:shared_mutex Class `shared_mutex`]
|
|
|
|
class shared_mutex
|
|
{
|
|
public:
|
|
shared_mutex();
|
|
~shared_mutex();
|
|
|
|
void lock_shared();
|
|
bool try_lock_shared();
|
|
bool timed_lock_shared(system_time const& timeout);
|
|
void unlock_shared();
|
|
|
|
void lock();
|
|
bool try_lock();
|
|
bool timed_lock(system_time const& timeout);
|
|
void unlock();
|
|
|
|
void lock_upgrade();
|
|
void unlock_upgrade();
|
|
|
|
void unlock_upgrade_and_lock();
|
|
void unlock_and_lock_upgrade();
|
|
void unlock_and_lock_shared();
|
|
void unlock_upgrade_and_lock_shared();
|
|
};
|
|
|
|
The class `boost::shared_mutex` provides an implementation of a multiple-reader / single-writer mutex. It implements the
|
|
__upgrade_lockable_concept__.
|
|
|
|
Multiple concurrent calls to __lock_ref__, __try_lock_ref__, __timed_lock_ref__, __lock_shared_ref__, __try_lock_shared_ref__ and
|
|
__timed_lock_shared_ref__ shall be permitted.
|
|
|
|
|
|
[endsect]
|