thread.h File Reference

Synchronization and threading services. More...

#include <cc++/config.h>
#include <ctime>
#include <pthread.h>
#include <time.h>
#include <signal.h>
#include <unistd.h>

Go to the source code of this file.

Namespaces

namespace  ost

Classes

class  ost::Mutex
 The Mutex class is used to protect a section of code so that at any given time only a single thread can perform the protected operation.Mutex lock for protected access. More...
class  ost::MutexLock
 The MutexLock class is used to protect a section of code so that at any given time only a single thread can perform the protected operation.Mutex automatic locker for protected access. More...
class  ost::ThreadLock
 The ThreadLock class impliments a thread rwlock for optimal reader performance on systems which have rwlock support, and reverts to a simple mutex for those that do not.Posix rwlock extension for protected access. More...
class  ost::ReadLock
 The ReadLock class is used to protect a section of code through a ThreadLock for "read" access to the member function.Read mode automatic locker for protected access. More...
class  ost::WriteLock
 The WriteLock class is used to protect a section of code through a ThreadLock for "write" access to the member function.Read mode automatic locker for protected access. More...
class  ost::MutexCounter
 The Mutex Counter is a counter variable which can safely be incremented or decremented by multiple threads.Thread protected integer counter. More...
class  ost::AtomicCounter
 The AtomicCounter class offers thread-safe manipulation of an integer counter.atomic counter operation. More...
class  ost::Conditional
 A conditional variable synchcronization object for one to one and one to many signal and control events between processes.conditional. More...
class  ost::Semaphore
 A semaphore is generally used as a synchronization object between multiple threads or to protect a limited and finite resource such as a memory or thread pool.Semaphore counter for thread synchronization. More...
class  ost::SemaphoreLock
 The SemaphoreLock class is used to protect a section of code through a semaphore so that only x instances of the member function may execute concurrently.Semaphore automatic locker for protected access. More...
class  ost::Event
 The Event class implements a feature originally found in the WIN32 API; event notification.Thread synchornization on event notification. More...
class  ost::Thread
 Every thread of execution in an application is created by instantiating an object of a class derived from the Thread class.base class used to derive all threads of execution. More...
class  ost::Cancellation
 A class to automatically set the thread cancellation mode of a member function.Automatic cancellation mode setting. More...
class  ost::PosixThread
class  ost::ThreadKey
 This class allows the creation of a thread context unique "pointer" that can be set and retrieved and can be used to create thread specific data areas for implementing "thread safe" library routines.container for thread specific data storage. More...
class  ost::TimerPort
 Timer ports are used to provide synchronized timing events when managed under a "service thread" such as SocketService.synchronized millisecond timing for service threads. More...
class  ost::SysTime
 This class is used to access non-reentrant date and time functions in the standard C library.Thread safe date and time functions. More...

Defines

#define CCXX_POSIX
#define TIMEOUT_INF   ~((timeout_t) 0)
#define ENTER_CRITICAL   enterMutex();
#define LEAVE_CRITICAL   leaveMutex();
#define ENTER_DEFERRED   setCancel(cancelDeferred);
#define LEAVE_DEFERRED   setCancel(cancelImmediate);
#define psleep(x)   (sleep)(x)

Typedefs

typedef pthread_t cctid_t
typedef unsigned long timeout_t
typedef int ost::signo_t

Functions

timespec * ost::getTimeout (struct timespec *spec, timeout_t timeout)
void ost::wait (signo_t signo)
Thread * ost::getThread (void)
tm * ost::localtime_r (const time_t *t, struct tm *b)
char * ost::ctime_r (const time_t *t, char *buf)
tm * ost::gmtime_r (const time_t *t, struct tm *b)
char * ost::asctime_r (const struct tm *tm, char *b)

Variables

__EXPORT ost::Thread
__EXPORT ost::ThreadKey
__EXPORT ost::Conditional
__EXPORT ost::Event


Detailed Description

Synchronization and threading services.


Define Documentation

#define CCXX_POSIX

#define ENTER_CRITICAL   enterMutex();

#define ENTER_DEFERRED   setCancel(cancelDeferred);

#define LEAVE_CRITICAL   leaveMutex();

#define LEAVE_DEFERRED   setCancel(cancelImmediate);

#define psleep (  )     (sleep)(x)

#define TIMEOUT_INF   ~((timeout_t) 0)


Typedef Documentation

typedef pthread_t cctid_t

typedef unsigned long timeout_t


Generated on Tue Dec 4 13:39:21 2007 for GNU CommonC++ by  doxygen 1.5.2