FSH_SEMREQUEST - Request a semaphore
Purpose
This function allows an FSD to obtain exclusive access to a semaphore.
Calling Sequence
int far pascal FSH_SEMREQUEST(pSem, cmsTimeout)
void far * pSem;
unsigned long cmsTimeout;
Where
pSem is the handle to the system semaphore or the long address of the ram
semaphore.
cmsTimeout is the number of milliseconds to wait.
Returns
If no error is detected, a zero error code is returned. If an error is
detected, one of the following error codes is returned:
oERROR_INTERRUPT
the current thread received a signal.
oERROR_SEM_TIMEOUT
the time-out expired without gaining access to the semaphore.
oERROR_SEM_OWNER_DIED
the owner of the semaphore died.
oERROR_TOO_MANY_SEM_REQUESTS
there are too many semaphore requests in progress.
oERROR_PROTECTION_VIOLATION
the semaphore is inaccessible.
Remarks
The time-out value of 0xFFFFFFFF indicates an indefinite time-out.
The caller may receive access to the semaphore after the time-out period
has expired without receiving an ERROR_SEM_TIMEOUT. Semaphore time-out
values, therefore, should not be used for exact timing and sequencing.
FSH_SEMREQUEST may block.
Note: OS/2 does not validate input parameters. An FSD, therefore, should
call FSH_PROBEBUF where appropriate.
Created using Inf-PHP v.2 (c) 2003 Yuri Prokushev
Created using Inf-HTML v.0.9b (c) 1995 Peter Childs