A class for manual thread creation and synchronization.
More...
#include <xmltooling/util/Threads.h>
|
virtual int | detach ()=0 |
| Disassociate from the thread. More...
|
|
virtual int | join (void **thread_return)=0 |
| Join with the thread and wait for its completion. More...
|
|
virtual int | kill (int signo)=0 |
| Kill the thread. More...
|
|
|
static Thread * | create (void *(*start_routine)(void *), void *arg, size_t stacksize=0) |
| Creates a new thread object to run the supplied start routine. More...
|
|
static void | exit (void *return_val) |
| Exits a thread gracefully. More...
|
|
static void | sleep (int seconds) |
| Sleeps the current thread for the specified amount of time. More...
|
|
static void | mask_all_signals (void) |
| Masks all signals from a thread.
|
|
static int | mask_signals (int how, const sigset_t *newmask, sigset_t *oldmask) |
| Masks specific signals from a thread. More...
|
|
A class for manual thread creation and synchronization.
static Thread* xmltooling::Thread::create |
( |
void *(*)(void *) |
start_routine, |
|
|
void * |
arg, |
|
|
size_t |
stacksize = 0 |
|
) |
| |
|
static |
Creates a new thread object to run the supplied start routine.
- Parameters
-
start_routine | the function to execute on the thread |
arg | a parameter for the start routine |
stacksize | size of stack to use, or 0 for default |
- Returns
- the created and running thread object
virtual int xmltooling::Thread::detach |
( |
| ) |
|
|
pure virtual |
Disassociate from the thread.
- Returns
- 0 for success, non-zero for failure
static void xmltooling::Thread::exit |
( |
void * |
return_val | ) |
|
|
static |
Exits a thread gracefully.
- Parameters
-
return_val | the return value for the thread |
virtual int xmltooling::Thread::join |
( |
void ** |
thread_return | ) |
|
|
pure virtual |
Join with the thread and wait for its completion.
- Parameters
-
thread_return | holds the return value of the thread routine |
- Returns
- 0 for success, non-zero for failure
virtual int xmltooling::Thread::kill |
( |
int |
signo | ) |
|
|
pure virtual |
Kill the thread.
- Parameters
-
signo | the signal to send to the thread |
- Returns
- 0 for success, non-zero for failure
static int xmltooling::Thread::mask_signals |
( |
int |
how, |
|
|
const sigset_t * |
newmask, |
|
|
sigset_t * |
oldmask |
|
) |
| |
|
static |
Masks specific signals from a thread.
- Parameters
-
how | |
newmask | the new signal mask |
oldmask | the old signal mask |
- Returns
- 0 for success, non-zero for failure
static void xmltooling::Thread::sleep |
( |
int |
seconds | ) |
|
|
static |
Sleeps the current thread for the specified amount of time.
- Parameters
-
The documentation for this class was generated from the following file: