コードは次のとおりです。
timer.schedule(new TimerTask()
{
public void run()
{
synchronized(this)
{
try
{
// System.out.println(" ITERATION = ");
pachubeCLI.update(78164);
}
catch (PachubeException e)
{
// If an exception occurs it will print the error message from the
// failed HTTP command
System.err.println(e.errorMessage);
}
catch (IOException e)
{
System.err.println(e);
}
}
}
}, 0, 5*1000);
Timer
コードは基本的に、クラスのオブジェクトを使用して操作をスケジュールするために使用されていることがわかります。schedule
Eclipse によると、メソッドに渡されるパラメータは次のとおり(TimerTask task,long delay, long period)
です。TimerTask
しかし、このコードを見ると、クラスへの参照ではなく、コードのブロック全体が最初のパラメーターとして渡されています。そのような方法は今まで見たことがありません。ここで正確に何が起こっているのですか?
背景: オブジェクトのschedule
メソッドは、Timer
Xively (以前の COSM (以前の pachube)) のフィードを定期的に更新するために使用されています。
また、どのタグがここで何が起こっているかを説明しているのかわかりません.もしそうなら、それを追加するか、コメントにドロップしてください.