Hi :-)
In case you're interested, I added support for timeouts to the LightweightSemaphore.
The platform-specific code is thanks to some pull requests I had on my concurrent queue (a lot of users wanted a blocking version with a timeout!), specifically this one and this one. My main contribution was the changes to the LightweightSemaphore itself (the loop at the end of waitWithPartialSpinning is kinda interesting).
Hi :-) In case you're interested, I added support for timeouts to the LightweightSemaphore.
The platform-specific code is thanks to some pull requests I had on my concurrent queue (a lot of users wanted a blocking version with a timeout!), specifically this one and this one. My main contribution was the changes to the LightweightSemaphore itself (the loop at the end of waitWithPartialSpinning is kinda interesting).