System::Threading::Semaphore class

Semaphore class

Semaphore implementation. Objects of this class should only be allocated using System::MakeObject() function. Never create instance of this type on stack or using operator new, as it will result in runtime errors and/or assertion faults. Always wrap this class into System::SmartPtr pointer and use this pointer to pass it to functions as argument.

class Semaphore : public System::Threading::WaitHandle

Methods

MethodDescription
Release()Releases lock on semaphore.
Release(int)Releases multiple locks on semaphore.
virtual Reset()Sets semaphore to non-signalled state. Not supported.
Semaphore(int, int)RTTI information.
Semaphore(int, int, const String&)Creates named semaphore.
Semaphore(int, int, const String&, bool&)Creates named semaphore.
virtual Set()Sets semaphore to signalled state. Not supported.
WaitOne() overrideLocks semaphore. Performs unlimited waiting if neccessary.
WaitOne(int) overrideLocks semaphore. Performs waiting if neccessary.

Fields

FieldDescription
static WaitTimeoutSpecial value to be returned by the function otherwise returning index of signalled object in array, if timeout exceeds and nothing signals.

See Also