RPG プログラムの中で sleep()

RPG で C ランタイム関数を使用する」で ILE RPG の中から C の関数を利用する例を挙げましたが、今回は C のsleep() 関数を使用してプログラムの中の処理をちょっと待たせるやり方を紹介してみます。

特別に解説は要りませんね。指定は秒数です。

     H BNDDIR('QC2LE')  DFTACTGRP(*NO)                                                              
      *                                                                                             
     D sleep           PR            10u 0 extProc('sleep')                                         
     D  seconds                      10u 0 VALUE                                                    
      *                                                                                             
     D timeb           S              8a                                                            
     D timea           S              8a                                                            
      /Free                                                                                         
                                                                                                    
              timeb = %CHAR(%time());                                                               
              sleep(5);                                                                             
              timea = %CHAR(%time());                                                               
              dsply ('PGM was slept from ' + timeb + ' to ' + timea);                               
                                                                                                    
              *inLR = *on ;                                                                         
              return ;                                                                              
                                                                                                    
      /End-Free

実行してみると、ちゃんと 5秒待っていることが確認できます。

[Top Pageに戻る]

Ads by TOK2