diff options
Diffstat (limited to 'raul/Semaphore.h')
-rw-r--r-- | raul/Semaphore.h | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/raul/Semaphore.h b/raul/Semaphore.h index 649d148..28bd93e 100644 --- a/raul/Semaphore.h +++ b/raul/Semaphore.h @@ -41,6 +41,9 @@ public: inline ~Semaphore() { sem_destroy(&_sem); } + inline void reset(unsigned int initial) + { sem_destroy(&_sem); sem_init(&_sem, 0, initial); } + /** Increment (and signal any waiters). * * Realtime safe. @@ -61,6 +64,7 @@ public: * Realtime safe? */ inline int try_wait() { return sem_trywait(&_sem); } + private: sem_t _sem; }; |