### ISharedSemaphoreHandle

  The ISharedSemaphoreHandle class is a wrapper for operating system semaphore handles. An example of a semaphore is a flag in a multiple-user application that prevents simultaneous access to a file.

### ISharedSemaphoreHandle - Member Functions and Data by Group

### Constructors & Destructor

Use this constructor to create an ISharedSemaphoreHandle object.

ISharedSemaphoreHandle

      public:
      ISharedSemaphoreHandle(Value hsem = 0)

  Constructs an ISharedSemaphoreHandle object from an operating system handle of type Value. Typically this value originates in a system API call.

Supported Platforms

  Windows | OS/2 | AIX
  Yes | Yes | Yes

### Diagnostics

Use these functions to obtain diagnostic information about the handle.

asDebugInfo

      public:
      IString asDebugInfo() const

  Returns the handle as a string containing diagnostic information.

Supported Platforms

  Windows | OS/2 | AIX
  Yes | Yes | Yes

asString

      public:
      IString asString() const

  Returns the handle as a string of form nnnn.

Supported Platforms

  Windows | OS/2 | AIX
  Yes | Yes | Yes

### Member Access

These methods provide access to member data.

asUnsigned

      public:
      unsigned long asUnsigned() const

  Returns the handle value as an unsigned long value.

Supported Platforms

  Windows | OS/2 | AIX
  Yes | Yes | Yes

operator Value

      public:
      operator Value() const

  Returns the handle as its operating system dependent type. Use this operator when you use the handle object as an argument to an operating system function.

Supported Platforms

  Windows | OS/2 | AIX
  Yes | Yes | Yes

### ISharedSemaphoreHandle - Type Definitions

Value

      typedef unsigned long Value

  This type definition defines Value to be a void* on the Windows platforms. On all other platforms Value is defined to be an unsigned long.

  Variation 1

      typedef unsigned long Value

Supported Platforms

  Windows | OS/2 | AIX
  No | Yes | Yes

  Variation 2

      typedef void * Value

Supported Platforms

  Windows | OS/2 | AIX
  Yes | No | No

### ISharedSemaphoreHandle - Associated Globals

operator <<

      ostream& operator <<(ostream& aStream, const ISharedSemaphoreHandle& aHandle)

  Formats this shared semaphore object to the passed ostream.

### ISharedSemaphoreHandle - Inherited Member Functions and Data

#### Inherited Public Functions

  - None

#### Inherited Public Data

  - None

#### Inherited Protected Functions

  - None

#### Inherited Protected Data

  - None