EJB エンジンは、EJB オブジェクトに対するメソッド呼び出しのスケジューリングをサポートしています。このタスクは、ResourceManager.createAutoCaller() および ResourceManager.removeAutoCaller() メソッドを使用して管理します。
AutoCaller を作成するには、createAutoCaller() メソッドを、オブジェクト、メソッド、パラメータ、および間隔 (ミリ秒) とともに呼び出します。createAutoCaller()メソッドは、AutoCaller の固有の ID を返します。次に、サーバは、AutoCaller が削除されるか、またはサーバが停止するまで、指定されたメソッドを指定された間隔で呼び出します。
AutoCaller を削除するには、ResourceManager.removeAutoCaller() メソッドを ID とともに呼び出します。AutoCaller メソッドの永続性は、サーバがシャットダウンしている間は失われます。
EJB サンプル 7C の次の例は、createAutoCaller() メソッドを呼び出します。
...
try {
Method method = Customer.class.getMethod("updateWorth", new Class[]
{});
long interval =
Long.parseLong(getEnvironment().getProperty("updateInterval",
"1000"));
_callerId = ResourceManager.createAutoCaller(customer, method,
new Object[] {}, interval);
}
catch (Exception exception) {
exception.printStackTrace();
}
...
詳細は、JRun JavaDocs ファイルに付属の API マニュアル ResourceManager を参照してください。