hmux (HMUX) - input

      The handle of the muxwait semaphore to wait for.

    ulTimeout (ULONG) - input

      The time-out in milliseconds.

      This is the maximum amount of time the user wants to allow the thread to be blocked.

      This parameter can also have the following values:

      0L

        SEM_IMMEDIATE_RETURN DosWaitMuxWaitSem returns without blocking the calling thread.
      -1L
        SEM_INDEFINITE_WAIT
        DosWaitMuxWaitSem blocks the calling thread indefinitely.

      pulUser (PULONG) - output

        A pointer to a ULONG in which a user-defined value is returned.

        The user-defined value is received from the ulUser field of the SEMRECORD structure of the semaphore that was posted or released.

        If DCMW_WAIT_ANY was specified in the flAttr. parameter when the muxwait semaphore was created, this will be the user field of the semaphore that was posted or released. If the muxwait semaphore consists of mutex semaphores, any mutex semaphore that is released is owned by the caller.

        If DCMW_WAIT_ALL was specified in the flAttr. parameter when the muxwait semaphore was created, this will be the user field of the last semaphore that was posted or released. (If the thread did not block, the last semaphore that was posted or released will also be the last semaphore in the muxwait-semaphore list.) If the muxwait semaphore consists of mutex semaphores, all of the mutex semaphores that are released are owned by the caller.

      ulrc (APIRET) - returns

        Return Code.

        DosWaitMuxWaitSem returns one of the following values:

      • NO_ERROR 6
          ERROR_INVALID_HANDLE
        8
          ERROR_NOT_ENOUGH_MEMORY
        87
          ERROR_INVALID_PARAMETER
        95
          ERROR_INTERRUPT
        103
          ERROR_TOO_MANY_SEM_REQUESTS
        105
          ERROR_SEM_OWNER_DIED
        286
          ERROR_EMPTY_MUXWAIT
        287
          ERROR_MUTEX_OWNED
        292
          ERROR_WRONG_TYPE
        640
          ERROR_TIMEOUT
        For a full list of error codes, see Errors.


      [Back] [Next]