39 { pthread_mutex_init(&m_Mutex,NULL); };
43 { pthread_mutex_destroy(&m_Mutex); };
49 {
return pthread_mutex_lock(&m_Mutex); };
53 {
return pthread_mutex_unlock(&m_Mutex); };
85 : m_tid(0), m_attr(NULL), m_running(0), m_detached(0)
99 inline pthread_t
self()
const 104 virtual std::string toString()
const;
107 inline pthread_attr_t*
attr()
const 112 {
return m_running; };
116 {
return m_detached; };
150 virtual int detach(
bool force=
false);
156 virtual void* run() = 0;
generic lockable object wrapper class
Definition: ddcThread.h:30
int m_detached
is this thread currently detached?
Definition: ddcThread.h:75
int unlock() const
Definition: ddcThread.h:52
virtual ~ddcLockable()
Definition: ddcThread.h:42
virtual void init()
Definition: ddcThread.h:127
generic pthread wrapper class
Definition: ddcThread.h:59
pthread_mutex_t m_Mutex
Definition: ddcThread.h:34
int detached() const
get value of m_detached flag
Definition: ddcThread.h:115
int m_running
is this thread is currently running?
Definition: ddcThread.h:72
pthread_attr_t * m_attr
underlying thread attributes (NULL by default)
Definition: ddcThread.h:69
ddcThread()
Definition: ddcThread.h:84
pthread_attr_t * attr() const
get current thread attributes (for use by child classes)
Definition: ddcThread.h:107
ddcLockable()
Definition: ddcThread.h:38
int lock() const
Definition: ddcThread.h:48
int running() const
get value of m_running flag
Definition: ddcThread.h:111