Qore Programming Language  0.8.11.1
Public Member Functions | List of all members
QoreCondition Class Reference

a thread condition class implementing a wrapper for pthread_cond_t More...

#include <QoreCondition.h>

Public Member Functions

DLLEXPORT QoreCondition ()
 creates the condition object
 
DLLEXPORT ~QoreCondition ()
 destroys the condition object
 
DLLEXPORT int broadcast ()
 singles all threads blocked on this condition to wake up
 
DLLEXPORT int signal ()
 signals a single waiting thread to wake up
 
DLLEXPORT int wait (pthread_mutex_t *m)
 blocks a thread on a mutex until the condition is signaled More...
 
DLLEXPORT int wait (pthread_mutex_t *m, int timeout_ms)
 blocks a thread on a mutex for a certain number of milliseconds until the condition is signaled More...
 
DLLLOCAL int wait (QoreThreadLock *l)
 blocks a thread on a lock until the condition is signaled More...
 
DLLLOCAL int wait (QoreThreadLock *l, int timeout_ms)
 blocks a thread on a lock for a certain number of milliseconds until the condition is signaled More...
 
DLLLOCAL int wait (QoreThreadLock &l)
 blocks a thread on a lock until the condition is signaled More...
 
DLLLOCAL int wait (QoreThreadLock &l, int timeout_ms)
 blocks a thread on a lock for a certain number of milliseconds until the condition is signaled More...
 
DLLEXPORT int wait2 (pthread_mutex_t *m, int64 timeout_ms)
 blocks a thread on a mutex for a certain number of milliseconds until the condition is signaled More...
 
DLLLOCAL int wait2 (QoreThreadLock *l, int64 timeout_ms)
 blocks a thread on a lock for a certain number of milliseconds until the condition is signaled More...
 
DLLLOCAL int wait2 (QoreThreadLock &l, int64 timeout_ms)
 blocks a thread on a lock for a certain number of milliseconds until the condition is signaled More...
 

Detailed Description

a thread condition class implementing a wrapper for pthread_cond_t

all threads that block on a given QoreCondition object should use the same mutex or QoreThreadLock object for blocking

See also
QoreThreadLock

Member Function Documentation

DLLEXPORT int QoreCondition::wait ( pthread_mutex_t *  m)

blocks a thread on a mutex until the condition is signaled

Parameters
mthe mutex to wait on
Returns
0 for success, non-zero for error

Referenced by wait().

DLLEXPORT int QoreCondition::wait ( pthread_mutex_t *  m,
int  timeout_ms 
)

blocks a thread on a mutex for a certain number of milliseconds until the condition is signaled

Parameters
mthe mutext to wait on
timeout_msthe timeout value is milliseconds
Returns
a non-zero return value indicates a timeout occured
Deprecated:
use wait2(pthread_mutex_t*, int64) instead
DLLLOCAL int QoreCondition::wait ( QoreThreadLock l)
inline

blocks a thread on a lock until the condition is signaled

Parameters
lthe QoreThreadLock to wait on
Returns
0 for success, non-zero for error

References wait().

DLLLOCAL int QoreCondition::wait ( QoreThreadLock l,
int  timeout_ms 
)
inline

blocks a thread on a lock for a certain number of milliseconds until the condition is signaled

Parameters
lthe QoreThreadLock to wait on
timeout_msthe timeout value is milliseconds
Returns
a non-zero return value indicates a timeout occured
Deprecated:
use wait2(QoreThreadLock*, int64) instead

References wait().

DLLLOCAL int QoreCondition::wait ( QoreThreadLock l)
inline

blocks a thread on a lock until the condition is signaled

Parameters
lthe QoreThreadLock to wait on
Returns
0 for success, non-zero for error

References wait().

DLLLOCAL int QoreCondition::wait ( QoreThreadLock l,
int  timeout_ms 
)
inline

blocks a thread on a lock for a certain number of milliseconds until the condition is signaled

Parameters
lthe QoreThreadLock to wait on
timeout_msthe timeout value is milliseconds
Returns
a non-zero return value indicates a timeout occured
Deprecated:
use wait2(QoreThreadLock&, int64) instead

References wait().

DLLEXPORT int QoreCondition::wait2 ( pthread_mutex_t *  m,
int64  timeout_ms 
)

blocks a thread on a mutex for a certain number of milliseconds until the condition is signaled

Parameters
mthe mutext to wait on
timeout_msthe timeout value is milliseconds
Returns
a non-zero return value indicates a timeout occured

Referenced by wait2().

DLLLOCAL int QoreCondition::wait2 ( QoreThreadLock l,
int64  timeout_ms 
)
inline

blocks a thread on a lock for a certain number of milliseconds until the condition is signaled

Parameters
lthe QoreThreadLock to wait on
timeout_msthe timeout value is milliseconds
Returns
a non-zero return value indicates a timeout occured

References wait2().

DLLLOCAL int QoreCondition::wait2 ( QoreThreadLock l,
int64  timeout_ms 
)
inline

blocks a thread on a lock for a certain number of milliseconds until the condition is signaled

Parameters
lthe QoreThreadLock to wait on
timeout_msthe timeout value is milliseconds
Returns
a non-zero return value indicates a timeout occured

References wait2().


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