Used as the synchronization point for asynchronous I/O system services. This routine is for OpenVMS systems only.
1 – C Binding
#include <tis.h> int tis_sync ( unsigned long efn, void *iosb);
2 – Arguments
efn The event flag specified with the OpenVMS system service routine. iosb The IOSB specified with the OpenVMS system service routine.
3 – Description
When you are performing thread-synchronous "wait-form" system service calls on OpenVMS such as $QIOW, $ENQW, $GETJPIW, and so on, you should use this routine and tis_io_complete() with the asynchronous form of the service (that is, without the "W") and specify the address of tis_io_complete() as the completion AST routine (the AST argument, if any, is ignored). The call must also specify an IOSB (or equivalent, such as an LKSB) and if possible a unique event flag (see lib$get_ef). Once the library code is ready to wait for the I/O, it simply calls tis_sync() (just as if it were calling $SYNC).
4 – Return Values
This routine has the same return values as the OpenVMS $SYNC() routine.
5 – Associated Routines
tis_io_complete()