Jump to content

KbdSynch: Difference between revisions

From EDM2
Created page with "==Description== This call synchronizes access from a keyboard subsystem to the keyboard device driver. ==Syntax== <PRE> KbdSynch (IOWait) </PRE> ==Parameters== ; IOWait..."
 
Ak120 (talk | contribs)
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==
<PRE>
  KbdSynch (IOWait)
  KbdSynch
 
    (IOWait)
</PRE>


==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         NO_ERROR  
* 121 ERROR_SEM_TIMEOUT
* 121       ERROR_SEM_TIMEOUT  


==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>


==Related Functions==
[[Category:Kbd]]
*
 
[[Category:The OS/2 API Project]]

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