MouSynch: Difference between revisions
Appearance
Created page with "==Description== This call provides synchronous access for a mouse subsystem to the mouse device driver. ==Syntax== <PRE> MouSynch (IOWait) </PRE> ==Parameters== ; IOWa..." |
mNo edit summary |
||
Line 1: | Line 1: | ||
This call provides synchronous access for a mouse subsystem to the mouse device driver. | This call provides synchronous access for a mouse subsystem to the mouse device driver. | ||
==Syntax== | ==Syntax== | ||
MouSynch (IOWait) | |||
MouSynch | |||
==Parameters== | ==Parameters== | ||
; IOWait (USHORT) - input : Wait for access. The flag Word is defined as follows: | ;IOWait (USHORT) - input : Wait for access. The flag Word is defined as follows: | ||
'''Value Definition''' | |||
0 Control immediately returned to requestor. | 0 Control immediately returned to requestor. | ||
1 Requestor waits until mouse device driver is free. | 1 Requestor waits until mouse device driver is free. | ||
==Return Code== | ==Return Code== | ||
rc (USHORT) - return | rc (USHORT) - return | ||
Return code descriptions are: | Return code descriptions are: | ||
* 0 NO_ERROR | |||
* 121 ERROR_SEM_TIMEOUT | |||
==Remarks== | ==Remarks== | ||
MouSynch blocks all other threads within a session until the semaphore clears (returns from the subsystem to the router). To ensure proper synchronization, MouSynch should be issued by a mouse subsystem if it intends to access dynamically modifiable shared data for each session or if it intends to issue a DosDevIOCtl. MouSynch does not protect globally shared data from threads in other sessions. | MouSynch blocks all other threads within a session until the semaphore clears (returns from the subsystem to the router). To ensure proper synchronization, MouSynch should be issued by a mouse subsystem if it intends to access dynamically modifiable shared data for each session or if it intends to issue a DosDevIOCtl. MouSynch does not protect globally shared data from threads in other sessions. | ||
==Example Code== | ==Example Code== | ||
=== C Binding=== | === C Binding=== | ||
Line 47: | Line 42: | ||
</PRE> | </PRE> | ||
[[Category:Mou]] | |||
[[Category: |
Revision as of 23:16, 23 December 2016
This call provides synchronous access for a mouse subsystem to the mouse device driver.
Syntax
MouSynch (IOWait)
Parameters
- IOWait (USHORT) - input
- Wait for access. The flag Word is defined as follows:
Value Definition 0 Control immediately returned to requestor. 1 Requestor waits until mouse device driver is free.
Return Code
rc (USHORT) - return
Return code descriptions are:
- 0 NO_ERROR
- 121 ERROR_SEM_TIMEOUT
Remarks
MouSynch blocks all other threads within a session until the semaphore clears (returns from the subsystem to the router). To ensure proper synchronization, MouSynch should be issued by a mouse subsystem if it intends to access dynamically modifiable shared data for each session or if it intends to issue a DosDevIOCtl. MouSynch does not protect globally shared data from threads in other sessions.
Example Code
C Binding
#define INCL_MOU USHORT rc = MouSynch(IOWait); USHORT IOWait; /* Indicate wait/no wait */ USHORT rc; /* return code */
MASM Binding
EXTRN MouSynch:FAR INCL_MOU EQU 1 PUSH WORD IOWait ;Indicate wait/no wait CALL MouSynch Returns WORD