スクリプトの実行を一時停止
スクリプトの実行は、外部条件を待つため、または指定された時間だけ遅延させるために一時停止できます。これは、wait
ステートメントのいずれかを使用し て行います。スクリプトの実行を一時停止し、デバッグモードに入るために、breakpoint
コマンドを使用できます。
ask
およびanswer
コマンドも、ユーザーからの入力待ちの間にスクリプトが一時停止します。
Wait While
, Wait Until
コマンド
振る舞い: wait until
コマンドは、特定の条件が発生するか、特定の日時が到来するまでスクリプトの実行を一時停止します。過去の時間が指定された場合、実行は直ちに進みます。wait while
コマンドは、条件が真でなくなるまで待ちます。両方のコマンドでは、条件式は繰り返し評価され、その値が最終的に待機している結果に変わる式であるべきです。
構文:
wait while 条件
wait until 条件
wait until 時間表現
例:
wait until "12:50 PM"
wait until temperature(hell) < 32
wait while the sound is not done
Wait
コマンド
振る舞い: wait
コマンドは、指定された時間だけスクリプトの実行を一時停止します。スクリプトは単純に指示された時間間隔で眠り、その後起きて次のステートメントの実行を続けます。
TimeIntervalは、秒数に評価される任意の式です 。SenseTalkは秒に評価される時間間隔式をサポートしているため、週
、日
、時間
、分
、秒
、ティック
、ミリ秒
、マイクロ秒
といった用語を使用して時間を自然な形で表現できます(Time Intervals参照)。時間単位が指定されていない場合、秒が仮定されます。
構文:
wait timeInterval
例
wait 20 ticks -- 1/3 of a second
wait 2 days 7 hours 14 minutes and 28.6 seconds
wait 3 milliseconds
wait 1.5 -- 単位が指定されていないため、秒を仮定します
Breakpoint
コマンド
振る舞い: breakpoint
コマンドは、デバッガのコンテキストで実行されると、スクリプトの実行を一時停止し、デバッガに制御を移します。デバッグ目的でスクリプトを停止させたい任意の点でbreakpoint
を呼び出します。
:::注意点
breakpoint
コマンドは、スクリプトがデバッガなしの環境で実行されている場合、効果がありません。また、the breakpointsEnabled
グローバルプロパティをFalse
に設定することでブレークポイントを無効にすることもできます。このプロパティを再度True
に設定する(デフォルト値)と、ブレークポイントが再び有効になります。
:::
構文:
breakpoint
例
if count > upperLimit then breakpoint