_RETURN()--Return Without Exiting IBM PASE for i


  Syntax
 #include <as400_protos.h>

 int _RETURN(void);

  Default Public Authority: *USE

  Library: Standard C Library (libc.a)  

  Threadsafe: No

Note: This function can only be used in an IBM® i PASE program. See the IBM PASE for i topic collection for more information about creating IBM PASE for i programs.

The _RETURN() function returns to the ILE caller that called IBM PASE for i in this job, without exiting the IBM PASE for i program. IBM PASE for i remains active in the job, so APIs Qp2CallPase and Qp2CallPase2 can be used to call procedures in the IBM PASE for i program.


Parameters

None.


Authorities

None.


Return Value

_RETURN does not return to the IBM PASE for i program if it successfully returns to the ILE caller. A function result of -1 with an errno is returned for any error.


Error Conditions

EPERM is set if _RETURN is used in a fork child process or in an IBM PASE for i program that is currently running multiple threads.


Usage Notes

  1. The system provides two IBM PASE for i programs, /usr/lib/start32 (for 32-bits) and /usr/lib/start64 (for 64-bits), that return without exiting immediately after initializing the standard C library (libc.a) and pthreads library (libpthreads.a).

  2. The system ends any IBM PASE for i program when it destroys the activation group that called API Qp2RunPase. API program QP2SHELL always calls Qp2RunPase in a *NEW activation group that is destroyed before return, so QP2SHELL is not useful for running an IBM PASE for i program that returns without exiting.

  3. You may need to call ILE API Qp2EndPase to end an IBM PASE for i program that uses _RETURN. See Qp2EndPase()--End an IBM PASE for i Program for more information.


Related Information



API introduced: V5R2

[ Back to top | IBM PASE for i APIs | APIs by category ]