0 | NO_ERROR | Successfully obtained semaphore ownership |
6 | ERROR_INVALID_HANDLE | Error, The value in phmtxSemaphore does not point to a valid semaphore, The calling process must first have access to the semaphore in question |
95 | ERROR_INTERRUPT | Error, The thread has become unblocked by an external event such as an exception, ownership has not been obtained |
103 | ERROR_TOO_MANY_SEM_REQUESTS | Error, The semaphore usage count system limit, of 65535, has been exceeded |
105 | ERROR_SEM_OWNER_DIED | Error, The semaphore owner has died without releasing the semaphore |
640 | ERROR_TIMEOUT | Error, The caller was blocked for ulTimeout milliseconds but ownership of the semaphore could not be obtained within this time limit, Time has expired |
Ownership of a semaphore with multiple threads requesting it is granted to the thread with the highest priority. Among threads with the same priority, ownership is granted in a First-In-First-Out (FIFO) manner.
WinRequestMutexSem is intended to be used in Presentation Manager
applications rather than the DosRequestMutexSem counterpart to
avoid hanging the PM Message Queue.
Relevant Structures
Gotchas
The process calling DosRequestMutexSem must first obtain access to
the semaphore in question or ERROR_INVALID_HANDLE will be returned.
Sample Code
Last modified October 19/1996
Please send all errors, comments, and suggestions to:
timur@vnet.ibm.com
The OS/2 API Project |
WinRequestMutexSem |