A class for manual thread creation and synchronization.
More...
#include <xmltooling/util/Threads.h>
|
| virtual int | detach ()=0 |
| | Disassociate from the thread.
|
| virtual int | join (void **thread_return)=0 |
| | Join with the thread and wait for its completion.
|
| virtual int | kill (int signo)=0 |
| | Kill the thread.
|
|
| static Thread * | create (void *(*start_routine)(void *), void *arg, size_t stacksize=0) |
| | Creates a new thread object to run the supplied start routine.
|
| static void | exit (void *return_val) |
| | Exits a thread gracefully.
|
| static void | sleep (int seconds) |
| | Sleeps the current thread for the specified amount of time.
|
|
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.
|
A class for manual thread creation and synchronization.
◆ create()
| Thread * xmltooling::Thread::create |
( |
void *(* | start_routine )(void *), |
|
|
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
◆ detach()
| virtual int xmltooling::Thread::detach |
( |
| ) |
|
|
pure virtual |
Disassociate from the thread.
- Returns
- 0 for success, non-zero for failure
◆ exit()
| void xmltooling::Thread::exit |
( |
void * | return_val | ) |
|
|
static |
Exits a thread gracefully.
- Parameters
-
| return_val | the return value for the thread |
◆ join()
| 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
◆ kill()
| 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
◆ mask_signals()
| 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
◆ sleep()
| 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: