DosResetEventSem: Difference between revisions
Appearance
m Ak120 moved page OS2 API:CPI:DosResetEventSem to DosResetEventSem |
mNo edit summary |
||
| Line 1: | Line 1: | ||
=== Syntax === | === Syntax === | ||
DosResetEventSem( ''hevSemaphore'', ''pulPostCount'' ) | |||
=== Parameters === | === Parameters === | ||
;HEV ''hevSemaphore'' (input) | ;HEV ''hevSemaphore'' (input):The handle of the semaphore to be reset. | ||
:The handle of the semaphore to be reset. | ;PUL ''pulPostCount'' (output):The post count of the semaphore that was reset. This can ''not'' be set to NULL, it must be a valid pointer to ULONG. | ||
;PUL ''pulPostCount'' (output) | |||
:The post count of the semaphore that was reset. This can ''not'' be set to NULL, it must be a valid pointer to ULONG. | |||
=== Returns === | === Returns === | ||
;APIRET rc:The following values can be returned: | |||
The following values can be returned | |||
{|class="wikitable" | {|class="wikitable" | ||
|0||NO_ERROR||Semaphore released successfully | |||
|- | |- | ||
| | |6||ERROR_INVALID_HANDLE||Error, The value in ''phevSemaphore'' does not point to a valid semaphore, The calling process must first have access to the semaphore in question | ||
| | |||
| | |||
|- | |- | ||
| | |300||ERROR_ALREADY_RESET||Error, The semaphore is already reset, no posts have occurred since last reset | ||
| | |||
| | |||
| | |||
|Error, The semaphore is already reset, no posts have occurred since last reset | |||
|} | |} | ||
=== Usage Explanation === | === Usage Explanation === | ||
DosResetEventSem resets the post count of an event semaphore. | DosResetEventSem resets the post count of an event semaphore. | ||
=== Gotchas === | === Gotchas === | ||
The process calling DosResetEventSem must first obtain access to the semaphore in question or ERROR_INVALID_HANDLE will be returned. | The process calling DosResetEventSem must first obtain access to the semaphore in question or ERROR_INVALID_HANDLE will be returned. | ||
| Line 40: | Line 25: | ||
<pre> | <pre> | ||
#define INCL_DOSSEMAPHORES | #define INCL_DOSSEMAPHORES | ||
#include | #include <os2.h> | ||
HEV hevMySemaphore; /* MySemaphore handle */ | HEV hevMySemaphore; /* MySemaphore handle */ | ||
Latest revision as of 00:55, 21 February 2020
Syntax
DosResetEventSem( hevSemaphore, pulPostCount )
Parameters
- HEV hevSemaphore (input)
- The handle of the semaphore to be reset.
- PUL pulPostCount (output)
- The post count of the semaphore that was reset. This can not be set to NULL, it must be a valid pointer to ULONG.
Returns
- APIRET rc
- The following values can be returned:
| 0 | NO_ERROR | Semaphore released successfully |
| 6 | ERROR_INVALID_HANDLE | Error, The value in phevSemaphore does not point to a valid semaphore, The calling process must first have access to the semaphore in question |
| 300 | ERROR_ALREADY_RESET | Error, The semaphore is already reset, no posts have occurred since last reset |
Usage Explanation
DosResetEventSem resets the post count of an event semaphore.
Gotchas
The process calling DosResetEventSem must first obtain access to the semaphore in question or ERROR_INVALID_HANDLE will be returned.
Sample Code
#define INCL_DOSSEMAPHORES
#include <os2.h>
HEV hevMySemaphore; /* MySemaphore handle */
ULONG PostCount /* storage for the post count of MySemaphore */
/* access is gained to the semaphore in question */
/* either by DosCreateEventSem ... */
/* ... or by DosOpenEventSem */
/* its handle is placed in hevMySemaphore */
/* process becomes owner of semaphore */
/* by way of successful call to DosRequestEventSem */
rc = DosResetEventSem(hevMySemaphore, &PostCount);
if (rc != 0)
{
/* We got an error to take care of. */
}