[ Previous | Next | Table of Contents | Index | Library Home | Legal | Search ]

Technical Reference: Base Operating System and Extensions , Volume 2

RSiMainLoop Subroutine


Allows an application to suspend execution and wait to get awakened when data feeds arrive.


RSI Library (libSpmi.a)


#include sys/Rsi.h

void RSiMainLoop(msecs)
int msecs;


The RSiMainLoop subroutine:

  1. Allows the data-consumer program to suspend processing while waiting for data_feed packets to arrive from one or more xmservd daemons.
  2. Tells the subroutine that waits for data feeds to return control to the data-consumer program so that the latter can check for and react to other events.
  3. Invokes the subroutine to process data_feed packets for each such packet received.

To work properly, the RSiMainLoop subroutine requires that at least one RSiOpen (RSiOpen Subroutine) call has been successfully completed and that the connection has not been closed.


msecsThe minimum elapsed time in milliseconds that the subroutine should continue to attempt receives before returning to the caller. Notice that your program releases control for as many milliseconds you specify but that the callback functions defined on the RSiOpen call may be called repetitively during that time.

Error Codes

All RSI subroutines use external variables to provide error information. To access these variables, an application program must define the following external variables:

If the subroutine returns without an error, the RSiErrno variable is set to RSiOkay and the RSiEMsg character array is empty. If an error is detected, the RSiErrno variable returns an error code, as defined in the enum RSiErrorType. RSi error codes are described in List of RSi Error Codes.

Implementation Specifics

This subroutine is part of the Performance Toolbox for AIX licensed product.


/usr/include/sys/Rsi.h Declares the subroutines, data structures, handles, and macros that an application program can use to access the RSI.

Related Information

For related information, see RSiOpen Subroutine.

[ Previous | Next | Table of Contents | Index | Library Home | Legal | Search ]