MADNESS 0.10.1
|
Implements Mutex, MutexFair, Spinlock, ConditionVariable. More...
#include <madness/madness_config.h>
#include <pthread.h>
#include <thread>
#include <cstdio>
#include <madness/world/nodefaults.h>
#include <madness/world/timers.h>
#include <madness/world/atomicint.h>
#include <madness/world/madness_exception.h>
Go to the source code of this file.
Classes | |
class | madness::Barrier |
class | madness::ConditionVariable |
Scalable and fair condition variable (spins on local value) More... | |
class | madness::Mutex |
Mutex using pthread mutex operations. More... | |
class | madness::MutexFair |
A scalable and fair mutex (not recursive) More... | |
class | madness::MutexReaderWriter |
class | madness::MutexWaiter |
class | madness::PthreadConditionVariable |
Simple wrapper for Pthread condition variable with its own mutex. More... | |
class | madness::RecursiveMutex |
Recursive mutex using pthread mutex operations. More... | |
class | madness::ScopedMutex< mutexT > |
Mutex that is applied/released at start/end of a scope. More... | |
class | madness::Spinlock |
Spinlock using pthread spinlock operations. More... | |
Namespaces | |
namespace | madness |
Namespace for all elements and tools of MADNESS. | |
namespace | madness::detail |
Macros | |
#define | OLDXXX |
Typedefs | |
typedef PthreadConditionVariable | madness::CONDITION_VARIABLE_TYPE |
typedef Mutex | madness::SCALABLE_MUTEX_TYPE |
typedef Mutex | madness::SPINLOCK_TYPE |
Enumerations | |
enum class | madness::WaitPolicy { madness::Busy = 1 , madness::Yield , madness::Sleep } |
wait policies supported by ConditionVariable/DQueue/ThreadPool More... | |
Functions | |
void | madness::detail::print_mutex_error (int error_number) |
bool | madness::try_two_locks (const Mutex &m1, const Mutex &m2) |
Attempt to acquire two locks without blocking holding either one. | |
Implements Mutex, MutexFair, Spinlock, ConditionVariable.
#define OLDXXX |