CUBRID Engine  latest
cubsync::semaphore< T > Class Template Reference

#include <semaphore.hpp>

Inheritance diagram for cubsync::semaphore< T >:
Inheritance graph
Collaboration diagram for cubsync::semaphore< T >:
Collaboration graph

Public Member Functions

 semaphore (const T &init_value)
 
void signal (const T &new_value)
 
void wait (const T &required_value)
 

Private Attributes

value
 
std::mutex m_mutex
 
std::condition_variable m_cond_var
 

Detailed Description

template<typename T>
class cubsync::semaphore< T >

Definition at line 44 of file semaphore.hpp.

Constructor & Destructor Documentation

template<typename T>
cubsync::semaphore< T >::semaphore ( const T &  init_value)
inline

Definition at line 53 of file semaphore.hpp.

Member Function Documentation

template<typename T>
void cubsync::semaphore< T >::signal ( const T &  new_value)
inline

Definition at line 58 of file semaphore.hpp.

Referenced by cubsync::event_semaphore::clear(), and cubsync::event_semaphore::set().

Here is the caller graph for this function:

template<typename T>
void cubsync::semaphore< T >::wait ( const T &  required_value)
inline

Definition at line 66 of file semaphore.hpp.

Referenced by cubsync::event_semaphore::wait().

Here is the caller graph for this function:

Member Data Documentation

template<typename T>
std::condition_variable cubsync::semaphore< T >::m_cond_var
private

Definition at line 50 of file semaphore.hpp.

template<typename T>
std::mutex cubsync::semaphore< T >::m_mutex
private

Definition at line 49 of file semaphore.hpp.

template<typename T>
T cubsync::semaphore< T >::value
private

Definition at line 47 of file semaphore.hpp.


The documentation for this class was generated from the following file: