72 virtual void show(
void) ;
76 virtual int getValue(
void) ;
98 OsCSemBase(
const int queueOptions,
const int maxCount,
99 const int initCount) ;
105 void updateAcquireStats(
void);
109 void updateReleaseStats(
void);
131 # include "os/Wnt/OsCSemWnt.h" 133 #elif defined(_VXWORKS) 134 # include "os/Vxw/OsCSemVxw.h" 135 typedef class OsCSemVxw OsCSem;
136 #elif defined(__pingtel_on_posix__) 140 # error Unsupported target platform. Base class for the synchronization mechanisms in the OS abstraction layer.
Definition: OsSyncBase.h:46
QueueOptions
Definition: OsCSem.h:46
Definition: OsCSemLinux.h:32
queue blocked tasks on a first-in, first-out basis
Definition: OsCSem.h:48
OsStatus
Definition: OsStatus.h:27
virtual ~OsCSemBase()
Destructor.
Definition: OsCSem.h:102
virtual OsStatus tryAcquire(void)=0
Conditionally acquire the semaphore (i.e., don't block)
virtual OsStatus release(void)=0
Release the semaphore.
Definition: OsCSemWnt.h:34
Counting semaphore.
Definition: OsCSem.h:41
queue blocked tasks based on their priority
Definition: OsCSem.h:49
OsCSemBase(const int queueOptions, const int maxCount, const int initCount)
Default constructor.
Definition: OsCSemBase.cpp:40
virtual OsStatus acquire(const OsTime &rTimeout=OsTime::OS_INFINITY)=0
Block the task until the semaphore is acquired or the timeout expires.