Semaphore

Inherits: Reference < Object

A synchronization semaphore.

Description

A synchronization semaphore which can be used to synchronize multiple Threads. Initialized to zero on creation. Be careful to avoid deadlocks. For a binary version, see Mutex.

Methods

void post ( )
Error try_wait ( )
void wait ( )

Method Descriptions

  • void post ( )

Lowers the Semaphore, allowing one more thread in.


Like wait, but won't block, so if the value is zero, fails immediately and returns @GlobalScope.ERR_BUSY. If non-zero, it returns @GlobalScope.OK to report success.


  • void wait ( )

Waits for the Semaphore, if its value is zero, blocks until non-zero.