OverSim
XmlRpc::XmlRpcThread Class Reference

A simple platform-independent thread API implemented for posix and windows. More...

#include <XmlRpcThread.h>

Public Member Functions

 XmlRpcThread ()
 Construct a thread object. Not usable until setRunnable() has been called.
 XmlRpcThread (XmlRpcRunnable *runnable)
 Construct a thread object.
 ~XmlRpcThread ()
 Destructor. Does not perform a join() (ie, the thread may continue to run).
void start ()
 Execute the run method of the runnable object in a separate thread.
void join ()
 Waits until the thread exits.
XmlRpcRunnablegetRunnable () const
 Access the runnable.
void setRunnable (XmlRpcRunnable *r)
 Set the runnable.

Static Private Member Functions

static unsigned int __stdcall runInThread (void *pThread)
 Start the runnable going in a thread.

Private Attributes

XmlRpcRunnable_runner
 Code to be executed.
void * _pThread
 Native thread object.

Detailed Description

A simple platform-independent thread API implemented for posix and windows.

Definition at line 27 of file XmlRpcThread.h.

Constructor & Destructor Documentation

XmlRpc::XmlRpcThread::XmlRpcThread ( )
inline

Construct a thread object. Not usable until setRunnable() has been called.

Definition at line 30 of file XmlRpcThread.h.

: _runner(0), _pThread(0) {}
XmlRpc::XmlRpcThread::XmlRpcThread ( XmlRpcRunnable runnable)
inline

Construct a thread object.

Definition at line 33 of file XmlRpcThread.h.

: _runner(runnable), _pThread(0) {}
XmlRpc::XmlRpcThread::~XmlRpcThread ( )

Destructor. Does not perform a join() (ie, the thread may continue to run).

Member Function Documentation

XmlRpcRunnable* XmlRpc::XmlRpcThread::getRunnable ( ) const
inline

Access the runnable.

Definition at line 46 of file XmlRpcThread.h.

{ return _runner; }
void XmlRpc::XmlRpcThread::join ( )

Waits until the thread exits.

static unsigned int __stdcall XmlRpc::XmlRpcThread::runInThread ( void *  pThread)
staticprivate

Start the runnable going in a thread.

void XmlRpc::XmlRpcThread::setRunnable ( XmlRpcRunnable r)
inline

Set the runnable.

Definition at line 49 of file XmlRpcThread.h.

Referenced by XmlRpc::XmlRpcThreadedServer::Worker::Worker().

{ _runner = r; }
void XmlRpc::XmlRpcThread::start ( )

Execute the run method of the runnable object in a separate thread.

Returns immediately in the calling thread.

Referenced by XmlRpc::XmlRpcThreadedServer::Worker::Worker().

Member Data Documentation

void* XmlRpc::XmlRpcThread::_pThread
private

Native thread object.

Definition at line 60 of file XmlRpcThread.h.

XmlRpcRunnable* XmlRpc::XmlRpcThread::_runner
private

Code to be executed.

Definition at line 57 of file XmlRpcThread.h.

Referenced by getRunnable(), and setRunnable().


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