diff options
author | Robin Gareus <robin@gareus.org> | 2017-04-22 23:00:53 +0200 |
---|---|---|
committer | Robin Gareus <robin@gareus.org> | 2017-04-22 23:06:22 +0200 |
commit | 9c0ba3b3d53027f5c7c25341529562d41694ef2e (patch) | |
tree | f3fc1485bf84c2e8a556cc30f168e776ce4034e0 /libs/pbd/pbd | |
parent | 629e6cbefb8ec2f3fa158879b9720433aaf3e8fd (diff) |
Add mechanism to reset/lock semaphores
Diffstat (limited to 'libs/pbd/pbd')
-rw-r--r-- | libs/pbd/pbd/semutils.h | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/libs/pbd/pbd/semutils.h b/libs/pbd/pbd/semutils.h index 6c661ab499..e81e33e533 100644 --- a/libs/pbd/pbd/semutils.h +++ b/libs/pbd/pbd/semutils.h @@ -55,10 +55,12 @@ class LIBPBD_API Semaphore { int signal (); int wait (); + int reset (); #else int signal () { return sem_post (ptr_to_sem()); } int wait () { return sem_wait (ptr_to_sem()); } + int reset () { int rv = 0 ; while (sem_trywait (ptr_to_sem()) == 0) ++rv; return rv; } #endif }; |