xmltooling::Thread Class Reference

A class for manual thread creation and synchronization. More...

#include <xmltooling/util/Threads.h>

List of all members.

Public Member Functions

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 Public Member Functions

static Threadcreate (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.


Detailed Description

A class for manual thread creation and synchronization.


Member Function Documentation

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:
seconds time to sleep


The documentation for this class was generated from the following file:
Generated on Wed Aug 8 01:48:06 2012 for xmltooling by  doxygen 1.4.6