Wednesday, January 9, 2008

Delay the Job inside RPGLE:

To delay an internal loop inside a RPG program, or to delay a call to another program, use 'Sleep' or ‘Usleep’

Sleep – To delay a job for one or more seconds
Usleep – To delay a job for less than one second
H BndDir('QC2LE')
D Sleep Pr 10I 0 ExtProc('sleep')
D Seconds 10U 0 Value

D Usleep Pr 10I 0 ExtProc('usleep')
D Microsecs 10U 0 Value

* Sleep for 30 seconds
C CallP Sleep(0030)
* Sleep for less than a second
C CallP Usleep(0000999999)
Note: For values <= 1,000,000, usleep sleeps that many microseconds. For values > 1,000,000, it sleeps 0 microseconds.

No comments: