Writing global user exit programs

You must write global user exit programs in assembler language and they must be quasireentrant. However, if your user exit program calls the XPI, it must be fully reentrant.

Remember: A reentrant program is coded to allow one copy of itself to be used concurrently by several tasks; it does not modify itself while running. A quasireentrant program is serially reusable by different tasks. When it receives control it must be in the same state as when it relinquished control. Such a program can modify itself while running, and is therefore not fully reentrant.

For more information about quasireentrant programs, see Multithreading: Reentrant, quasi-reentrant, and threadsafe programs.