rtcmd:wait_for
Simple Wiki Based Contents Management System
ソフトウェア関連 >> rtcmd >> rtcmd:wait_for

wait_for:タイムアウトまたは設定した条件まで処理を中断

書式

wait_for timeout [-p PATH] [-m MODULE] [-c RTC] [-f func] [-r]

オプション

'-c RTC'
対象となるRTC名を設定する。
'-f func'
 wait_forの評価関数を設定する。関数funcは、RTCオブジェクトを引数とする。
'-m MODULE'
wait_forコマンドを実行する前にMODULEをインポートする。
'-p PATH'
wait_forコマンドを実行する前に PATHをモジュールの検索パスに追加する。
'-r'
wait_forコマンドの終了条件評価として、 not func(RTC) を使う。(評価関数の真偽を反転する)

概要

wait_forコマンドは、設定した時間(timeout)または設定したRTCを引数にした関数funcが真になるまで処理を停止させます。
'' '-c'オプション''が設定されていない場合には、timeoutで設定した時間だけ処理を停止します。
'' '-f'オプション''が設定されない場合には、設定したRTCがネームサーバーに存在するかどうかをチェックします。
'' '-r'オプション''を設定すると関数func(RTC)が偽になるまで処理を停止します。
'' '-m'オプション''と'' '-p'オプション''は、injectコマンドやprintコマンドと同じになります。

使用例

wait_forコマンドは、RTCの起動の完了やRTCのアクティベーションを待つようなときに使用します。
例えば、OpenJTalkRTC0の起動するまで待つ場合には、
 $ rtcmd wait_for 30 -c OpenJTalkRTC0
とします。この例では、タイムアウトが30(秒)になっています。30秒経ってもOpenJTalkRTC0が起動しない場合には、 ''""==== time out ====="''と表示されます。
また、アクティベーションの終了まで待つ場合には、
 $ rtcmd wait_for 30 -c JuliusRTC0 -f self.check_active
とします。