0 | NO_ERROR | Operation was
successful. |
6 | ERROR_INVALID_HANDLE | Error, The calling process must first have access to the shared semaphore
in question before adding it to the muxwait list |
286 | ERROR_EMPTY_MUXWAIT | Error, The MuxWait semaphore hmuxSemaphore is empty |
Include Info
#define INCL_DOSSEMAPHORES
#include <os2.h>
Usage Explanation
DosDeleteMuxWaitSem deletes a specified semaphore from a muxwait list.
Relevant Structures
Gotchas
This may only be called from a process that has gained proper access to the
MuxWait semaphore via either DosCreateMuxWaitSem
or DosOpenMuxWaitSem.
If the deleted semaphore is the last semaphore in the muxwait list, all threads
blocking on the MuxWait semaphore are unblocked.
If the deleted semaphore is the only "hold-out" in a MuxWait semaphore with
the DCMW_WAIT_ALL attribute, all threads blocked on the MuxWait semaphore
will be unblocked.
Sample Code
#define INCL_DOSSEMAPHORES
#include
HMUX hmuxMySemaphore; /* my muxwait semaphore handle */
HMTX hmtxMyOtherSemaphore; /* my mutex semaphore handle */
/* wave the magic wand and... */
/* hmuxMySemaphore contains a valid muxwait sem handle */
/* hmtxMyOtherSemaphore contains a valid mutex sem handle */
rc = DosDeleteMuxWaitSem( nmuxMySemaphore,
(HSEM)hmtxMyOtherSemaphore);
if (rc != 0)
{
/* We got an error to take care of. */
}
See Also
DosAddMuxWaitSem,
DosCloseMuxWaitSem,
DosCreateMuxWaitSem
DosOpenMuxWaitSem,
DosQueryMuxWaitSem,
DosWaitMuxWaitSem
Author
Joe Phillips -
jaiger@eng2.uconn.edu
Additions
Last modified July 17/1996
Please send all errors, comments, and suggestions to:
timur@vnet.ibm.com
The OS/2 API Project |
DosDeleteMuxWaitSem |