KbdSynch: Difference between revisions
Appearance
Created page with "==Description== This call synchronizes access from a keyboard subsystem to the keyboard device driver. ==Syntax== <PRE> KbdSynch (IOWait) </PRE> ==Parameters== ; IOWait..." |
mNo edit summary |
||
Line 2: | Line 2: | ||
This call synchronizes access from a keyboard subsystem to the keyboard device driver. | This call synchronizes access from a keyboard subsystem to the keyboard device driver. | ||
==Syntax== | ==Syntax== | ||
KbdSynch (IOWait) | |||
KbdSynch | |||
==Parameters== | ==Parameters== | ||
; IOWait (USHORT) - input : Wait for the bond. Values are: | ; IOWait (USHORT) - input : Wait for the bond. Values are: | ||
'''Value Definition''' | '''Value Definition''' | ||
0 Indicates the requestor does not wait for access to the device driver. | 0 Indicates the requestor does not wait for access to the device driver. | ||
1 Indicates the requestor waits for access to the device driver. | 1 Indicates the requestor waits for access to the device driver. | ||
==Return Code== | ==Return Code== | ||
rc (USHORT) - return | rc (USHORT) - return | ||
Return code descriptions are: | Return code descriptions are: | ||
* 0 NO_ERROR | |||
* 0 | * 121 ERROR_SEM_TIMEOUT | ||
* 121 | |||
==Remarks== | ==Remarks== | ||
KbdSynch blocks all other threads within a session until return from the subsystem to the router. To ensure proper synchronization, KbdSynch should be issued by a keyboard subsystem if it intends to issue a DosDevIOCtl or access dynamically shared data. KbdSynch does not protect globally shared data from threads in other sessions. | KbdSynch blocks all other threads within a session until return from the subsystem to the router. To ensure proper synchronization, KbdSynch should be issued by a keyboard subsystem if it intends to issue a DosDevIOCtl or access dynamically shared data. KbdSynch does not protect globally shared data from threads in other sessions. | ||
==Example Code== | ==Example Code== | ||
Line 48: | Line 42: | ||
</PRE> | </PRE> | ||
[[Category:Kbd]] | |||
[[Category: |
Revision as of 02:24, 5 December 2016
Description
This call synchronizes access from a keyboard subsystem to the keyboard device driver.
Syntax
KbdSynch (IOWait)
Parameters
- IOWait (USHORT) - input
- Wait for the bond. Values are:
Value Definition 0 Indicates the requestor does not wait for access to the device driver. 1 Indicates the requestor waits for access to the device driver.
Return Code
rc (USHORT) - return
Return code descriptions are:
- 0 NO_ERROR
- 121 ERROR_SEM_TIMEOUT
Remarks
KbdSynch blocks all other threads within a session until return from the subsystem to the router. To ensure proper synchronization, KbdSynch should be issued by a keyboard subsystem if it intends to issue a DosDevIOCtl or access dynamically shared data. KbdSynch does not protect globally shared data from threads in other sessions.
Example Code
C Binding
#define INCL_KBD USHORT rc = KbdSynch(IOWait); USHORT IOWait; /* Indicate if wait */ USHORT rc; /* return code */
MASM Binding
EXTRN KbdSynch:FAR INCL_KBD EQU 1 PUSH WORD IOWait ;Indicate if wait CALL KbdSynch Returns WORD