RtSemaphore Class

Limits the number of threads that can access a resource, or a particular type of resource, concurrently.

Inheritance Hierarchy

System.Object
  IntervalZero.MaxRT.wRTOS.RtApi.Threading.RtWaitHandle
    IntervalZero.MaxRT.wRTOS.RtApi.Threading.RtSemaphore

Namespace:  IntervalZero.MaxRT.wRTOS.RtApi.Threading
Assembly:  IntervalZero.MaxRT.wRTOS (in IntervalZero.MaxRT.wRTOS.dll) Version: 1.0.0.0 (File version: 1.0.0)

Syntax

Copy
public class RtSemaphore : RtWaitHandle

 

The RtSemaphore class exposes the following members.

Constructors

  Name Description

Public method

RtSemaphore (Int32, Int32)

Initializes a new instance of the RtSemaphore class, specifying the maximum number of concurrent entries, and optionally reserving some entries for the calling thread.

Public method

RtSemaphore (Int32, Int32, String)

Initializes a new instance of the RtSemaphore class, specifying the maximum number of concurrent entries, optionally reserving some entries for the calling thread, and optionally specifying the name of a system semaphore object.

Public method

RtSemaphore (Int32, Int32, String, Boolean)

Initializes a new instance of the RtSemaphore class, specifying the maximum number of concurrent entries, optionally reserving some entries for the calling thread, optionally specifying the name of a system semaphore object, and specifying an out parameter that indicates whether a new system object was created.

Properties

  Name Description

Public property

SafeWaitHandle

Gets or sets the native operating system handle.

(Inherited from RtWaitHandle.)

Methods

  Name Description

Public method

Close

Releases all resources held by the current RtSafeWaitHandle.

(Inherited from RtWaitHandle.)

Public method

Dispose

Releases all of the resources used by the RtWaitHandle.

(Inherited from RtWaitHandle.)

Protected method

Dispose (Boolean)

Releases the unmanaged resources used by the RtWaitHandle, and optionally releases the managed resources.

(Inherited from RtWaitHandle.)

Public method Static member

OpenExisting

Opens an existing named semaphore.

Public method

Release

Exits the semaphore, returning the previous count.

Public method

Release (Int32)

Exits the semaphore, returning the previous count.

Public method

WaitOne

When overridden in a derived class, blocks the current thread until the current WaitHandle receives a signal.

(Inherited from RtWaitHandle.)

Public method

WaitOne (Int32)

Blocks the current thread until the current System.Threading.WaitHandle receives a signal.

(Inherited from RtWaitHandle.)

Public method

WaitOne (TimeSpan)

Blocks the current thread until the current System.Threading.WaitHandle receives a signal.

(Inherited from RtWaitHandle.)

Public method

WaitOne (Int32, Boolean)

When overridden in a derived class, blocks the current thread until the current WaitHandle receives a signal, using 32-bit signed integer to measure the time interval and specifying whether to exit the synchronization domain before the wait.

(Inherited from RtWaitHandle.)

Public method

WaitOne (TimeSpan, Boolean)

Blocks the current thread until the current System.Threading.WaitHandle receives a signal.

(Inherited from RtWaitHandle.)

See Also: