このルーチンを使用して、ループにわずかな遅延を加えることができます。例えば、レコードがロック解除になるのを待っているループに遅延を導入できます。C$SLEEP を呼び出すことで、待ち状態の間にマシンで他のプログラムを実行できます。
C$SLEEP ルーチンには、1 つの引数が渡されます。この引数は、一時停止する秒数です。例えば、プログラムを 5.5 秒間停止する場合、次のいずれかを使用できます。
CALL "C$SLEEP" USING 5.5 CALL "C$SLEEP" USING "5.5"
一時停止の時間は、およその時間になります。システム・クロックの精緻さや現在のマシンの負荷状況に応じて、一時停止の実時間と指定した時間に多少の差が生じる場合があります。通常は、マシンの負荷が過剰な場合を除き、一時停止の時間は指定した時間の 1 秒以内または 10 分の 1 秒以内になります。
スリープ時間がゼロの場合、この機能によって何も生じません。スリープ時間に符号が付く場合、この機能は実行時にエラーを生成します。