Skip to main content

 

OutSystems 11オンラインヘルプ

 

OutSystems

タイマーを使用する

OutSystemsアプリケーションでは、タイマーを使用して非同期ロジックを実行できます。事前に指定した時刻にメールを送信するといったバッチ処理を実行する、あるいはデプロイ後にアプリケーションを構成するロジックを実行するといった際に有効です。

タイマーの処理方法

タイマーは、OutSystemsスケジューラサービスによって処理されます。このサービスは、実行可能状態にあるタイマーを確認して、そのアクションを実行します。現在時刻がタイマーのランタイムプロパティNextRunと等しいかそれを過ぎている場合に、タイマーは実行可能状態になります。

タイマーで実行されるアクションは時間がかかり処理能力を必要とすることが多いため、OutSystemsスケジューラサービスでは同時に実行できるタイマーの数が定められています。デフォルトでは、同時に実行可能なタイマーは3つです。この数は、OutSystemsの構成ツールで変更できます。

3つ以上のタイマーが同時刻に実行するようにスケジュール設定された場合、優先度の高いタイマーが先に実行されます。

タイマーアクションが正常に終了すると、タイマーのNextRunプロパティは次の実行時刻に更新されます。この時刻は、タイマーのScheduleプロパティを基に計算されます。

タイマーが実行されない場合、予期せぬエラーが発生した場合、またはアクションがタイムアウトした場合は、タイマーのNextRunプロパティは更新されません。つまり、次にOutSystemsスケジューラサービスが実行可能状態にあるタイマーを確認したときに、タイマーが選択され実行されます。

タイマーのタイムアウト

デフォルトでは、タイマーのタイムアウト時間は20分です。タイムアウト時間は、タイマーのTimeout in Minutesプロパティを設定することで変更できます。

タイマーに関連付けられたアクションが事前に定義された時間内に終わらなかった場合、アクションを中止してタイマーが停止します。これはエラーとして判断されるため、Service Centerの[Environment Configuration]領域で設定した再試行回数(デフォルトは3回)だけタイマーが再実行されます。

タイマーのセッション

タイマーなどの非同期ロジックとプロセスアクティビティのセッションは、異なります。つまり、タイマーに関連付けられたアクションを実行すると、セッション変数はすべてデフォルト値になります。

このセクションの記事

  • Was this article helpful?