LLVM API Documentation
#include <RWMutex.h>


Public Member Functions | |
| SmartRWMutex () | |
| bool | reader_acquire () |
| Unconditionally acquire the lock in reader mode. | |
| bool | reader_release () |
| Unconditionally release the lock in reader mode. | |
| bool | writer_acquire () |
| Unconditionally acquire the lock in writer mode. | |
| bool | writer_release () |
| Unconditionally release the lock in write mode. | |
SmartMutex - An R/W mutex with a compile time constant parameter that indicates whether this mutex should become a no-op when we're not running in multithreaded mode.
| llvm::sys::SmartRWMutex< mt_only >::SmartRWMutex | ( | ) | [inline, explicit] |
| bool llvm::sys::SmartRWMutex< mt_only >::reader_acquire | ( | ) | [inline] |
Unconditionally acquire the lock in reader mode.
Attempts to unconditionally acquire the lock in reader mode. If the lock is held by a writer, this method will wait until it can acquire the lock.
Reimplemented from llvm::sys::RWMutexImpl.
Definition at line 93 of file RWMutex.h.
References llvm::llvm_is_multithreaded().
| bool llvm::sys::SmartRWMutex< mt_only >::reader_release | ( | ) | [inline] |
Unconditionally release the lock in reader mode.
Attempts to release the lock in reader mode.
Reimplemented from llvm::sys::RWMutexImpl.
Definition at line 103 of file RWMutex.h.
References llvm::llvm_is_multithreaded().
| bool llvm::sys::SmartRWMutex< mt_only >::writer_acquire | ( | ) | [inline] |
Unconditionally acquire the lock in writer mode.
Attempts to unconditionally acquire the lock in reader mode. If the lock is held by any readers, this method will wait until it can acquire the lock.
Reimplemented from llvm::sys::RWMutexImpl.
Definition at line 114 of file RWMutex.h.
References llvm::llvm_is_multithreaded().
| bool llvm::sys::SmartRWMutex< mt_only >::writer_release | ( | ) | [inline] |
Unconditionally release the lock in write mode.
Attempts to release the lock in writer mode.
Reimplemented from llvm::sys::RWMutexImpl.
Definition at line 125 of file RWMutex.h.
References llvm::llvm_is_multithreaded().