Jump to content

DosCloseMuxWaitSem: Difference between revisions

From EDM2
Created page with "=== Syntax === rc = DosCloseMuxWaitSem( ''hmuxSemaphore'' ); === Parameters === HMUX ''hmuxSemaphore'' (input) The handle of the MuxWait semaphore to be closed. === Re..."
 
Line 67: Line 67:
</PRE>
</PRE>
=== See Also ===
=== See Also ===
[[OS2 API:CPI:DosAddMuxWaitSem|CPI:DosAddMuxWaitSem]], [[OS2 API:CPI:DosCreateMuxWaitSem|CPI:DosCreateMuxWaitSem]], [[OS2 API:CPI:DosDeleteMuxWaitSem|CPI:DosDeleteMuxWaitSem]] [[OS2 API:CPI:DosOpenMuxWaitSem|CPI:DosOpenMuxWaitSem]], [[OS2 API:CPI:DosQueryMuxWaitSem|CPI:DosQueryMuxWaitSem]], [[OS2 API:CPI:DosWaitMuxWaitSem|CPI:DosWaitMuxWaitSem]]  
[[OS2 API:CPI:DosAddMuxWaitSem|DosAddMuxWaitSem]], [[OS2 API:CPI:DosCreateMuxWaitSem|DosCreateMuxWaitSem]], [[OS2 API:CPI:DosDeleteMuxWaitSem|DosDeleteMuxWaitSem]] [[OS2 API:CPI:DosOpenMuxWaitSem|DosOpenMuxWaitSem]], [[OS2 API:CPI:DosQueryMuxWaitSem|DosQueryMuxWaitSem]], [[OS2 API:CPI:DosWaitMuxWaitSem|DosWaitMuxWaitSem]]  


[[Category:The OS/2 API Project]]
[[Category:The OS/2 API Project]]

Revision as of 23:32, 16 May 2016

Syntax

rc = DosCloseMuxWaitSem( hmuxSemaphore );


Parameters

 HMUX hmuxSemaphore (input)

The handle of the MuxWait semaphore to be closed.

Returns

 APIRET rc

The following values can be returned

0 NO_ERROR Operation was

successful.

6 ERROR_INVALID_HANDLE Error, The value in hmuxSemaphore does not point to a valid

semaphore

301 ERROR_SEM_BUSY Error,

Another thread is currently blocking on this MuxWait semaphore.

Include Info

#define INCL_DOSSEMAPHORES
#include <os2.h>


Usage Explanation

DosCloseMuxWaitSem decrements the usage count of a specified MuxWait semaphore. If the usage count of the semaphore reaches zero, the system frees the MuxWait semaphore resources.


Relevant Structures

Gotchas

Sample Code

#define INCL_DOSSEMAPHORES
#include 

HMUX  hmuxMySemaphore;     /* MySemaphore handle */

	/* access is gained to the semaphore in question */
	/* either by DosCreateMuxWaitSem ... */
	/* ... or by DosOpenMuxWaitSem */
	/* its handle is placed in hmuxMySemaphore */

	rc = DosCloseMuxWaitSem(hmuxMySemaphore);

	if (rc != 0)
	{
	  /* We got an error to take care of. */
	}

See Also

DosAddMuxWaitSem, DosCreateMuxWaitSem, DosDeleteMuxWaitSem DosOpenMuxWaitSem, DosQueryMuxWaitSem, DosWaitMuxWaitSem