18 #ifndef FOEDUS_SOC_SHARED_COND_HPP_
19 #define FOEDUS_SOC_SHARED_COND_HPP_
141 pthread_cond_t cond_;
142 pthread_condattr_t attr_;
153 #endif // FOEDUS_SOC_SHARED_COND_HPP_
void wait(SharedMutexScope *scope)
Unconditionally wait for the event.
Root package of FOEDUS (Fast Optimistic Engine for Data Unification Services).
void signal(SharedMutexScope *scope)
Unblock one waiter.
A conditional variable that can be placed in shared memory and used from multiple processes...
A mutex that can be placed in shared memory and used from multiple processes.
bool timedwait(SharedMutexScope *scope, uint64_t timeout_nanosec)
Wait for the event up to the given timeout.
void broadcast(SharedMutexScope *scope)
Unblock all waiters.
#define CXX11_FINAL
Used in public headers in place of "final" of C++11.
bool is_initialized() const
Auto-lock scope object for SharedMutex.
#define CXX11_FUNC_DELETE
Used in public headers in place of " = delete" of C++11.
bool exists_waiters() const
A non-synchronized method to tell seemingly whether there is a waiter or not.
void broadcast_nolock()
Unblock all waiters without a mutex held by the signaller.
SharedMutex * get_mutex()
Returns the mutex that protects this condition variable.