csSemaphore Class Reference
A semaphore object. More...
#include <csutil/thread.h>
Inheritance diagram for csSemaphore:
Public Member Functions | |
virtual char const * | GetLastError () const =0 |
Return the last error description, else 0 if there was none. | |
virtual bool | LockTry ()=0 |
Lock the semaphore if not already locked by some other entity. | |
virtual bool | LockWait ()=0 |
Lock the semaphore. | |
virtual bool | Release ()=0 |
Unlock the semaphore. | |
virtual uint32 | Value ()=0 |
Retrieve the present value of the semaphore. | |
Static Public Member Functions | |
static csRef< csSemaphore > | Create (uint32 value=0) |
Create a semaphore with some initial value. |
Detailed Description
A semaphore object.
Definition at line 228 of file thread.h.
Member Function Documentation
static csRef<csSemaphore> csSemaphore::Create | ( | uint32 | value = 0 |
) | [static] |
Create a semaphore with some initial value.
virtual char const* csSemaphore::GetLastError | ( | ) | const [pure virtual] |
Return the last error description, else 0 if there was none.
virtual bool csSemaphore::LockTry | ( | ) | [pure virtual] |
virtual bool csSemaphore::LockWait | ( | ) | [pure virtual] |
Lock the semaphore.
Suspends execution of the thread until the mutex can be locked. Each LockWait() must be balanced by a call to Release(). Returns true if locking succeeded. Returns false if locking failed for some catastrophic reason; check GetLastError().
virtual bool csSemaphore::Release | ( | ) | [pure virtual] |
Unlock the semaphore.
Each successful call to LockWait() or LockTry() must be balanced by a call to Release(). Returns true if unlocking succeeded. Returns false if unlocking failed for some catastrophic reason; check GetLastError().
virtual uint32 csSemaphore::Value | ( | ) | [pure virtual] |
Retrieve the present value of the semaphore.
The documentation for this class was generated from the following file:
- csutil/thread.h
Generated for Crystal Space by doxygen 1.4.7