CrystalSpace

Public API Reference

CS::Threading Namespace Reference

Functions and classes for threading, locking and atomic operations. More...


Classes

class  AtomicOperationsBase
 Define low-level atomic operations. More...
class  Condition
 Condition variable. More...
class  MutexImpl
 General mutex class. More...
class  Runnable
 Abstract base class for objects to be run in threads. More...
class  ScopedLock
 This is a utility class for locking a Mutex. More...
class  Thread
 Object representing a separate execution thread. More...
class  ThreadedJobQueue
class  ThreadGroup
 A group of threads handled as one unit. More...

Namespaces

namespace  Implementation

Typedefs

typedef MutexImpl
< Implementation::MutexBase > 
Mutex
 Basic non-recursive mutex.
typedef ScopedLock
< Mutex
MutexScopedLock
typedef MutexImpl
< Implementation::RecursiveMutexBase > 
RecursiveMutex
 Basic recursive mutex.
typedef ScopedLock
< RecursiveMutex
RecursiveMutexScopedLock
typedef unsigned int ThreadID
 OS specific thread identifier.

Enumerations

enum  ThreadPriority { THREAD_PRIO_LOW, THREAD_PRIO_NORMAL, THREAD_PRIO_HIGH }
 Priority values indicate how frequently a thread runs compared to other threads. More...


Detailed Description

Functions and classes for threading, locking and atomic operations.

Typedef Documentation

typedef MutexImpl<Implementation::MutexBase> CS::Threading::Mutex

Basic non-recursive mutex.

Definition at line 117 of file mutex.h.

typedef MutexImpl<Implementation::RecursiveMutexBase> CS::Threading::RecursiveMutex

Basic recursive mutex.

The difference between a normal mutex and recursive mutex is that a recursive mutex won't lock if same thread try to enter it several times.

Definition at line 124 of file mutex.h.

typedef unsigned int CS::Threading::ThreadID

OS specific thread identifier.

Definition at line 70 of file thread.h.


Enumeration Type Documentation

Priority values indicate how frequently a thread runs compared to other threads.

Thread scheduling is handled by the underlying OS, and so the true meaning of these values will vary depending on platform. A minimal set of values is defined for CS so that chances of support of the full range of values by the platform are greater.

Enumerator:
THREAD_PRIO_LOW  Reduced thread priority. Useful for background tasks.
THREAD_PRIO_NORMAL  Normal thread priority.
THREAD_PRIO_HIGH  Increased thread priority.

Useful for tasks that needs precedence over all other.

Definition at line 38 of file thread.h.


Generated for Crystal Space 1.2.1 by doxygen 1.5.3