You are now following this Submission
- You will see updates in your followed content feed
- You may receive emails, depending on your communication preferences
Matlab has a waitfor function but it only works if you have a figure handle, leading to some somewhat out-of-place code if you want to use it with callbacks.
Semaphore.m is a simple wrapper around waitfor to make downstream code a little cleaner. To use it, create a Semaphore object. If this object is passed to an event handler or timer, then that handler can call Semaphore.Release() when it's finished.
If another thread as a Semaphore.Wait() call, it will wait until the respective Semaphore has been released.
Inspired by http://www.mathworks.com/matlabcentral/fileexchange/32489-semaphore, but I wanted something that didn't require an external library.
Cite As
Kevin Wang (2026). Semaphore (https://www.mathworks.com/matlabcentral/fileexchange/42910-semaphore), MATLAB Central File Exchange. Retrieved .
Acknowledgements
Inspired by: semaphore
General Information
- Version 1.2.0.0 (1.41 KB)
MATLAB Release Compatibility
- Compatible with any release
Platform Compatibility
- Windows
- macOS
- Linux
