私はGWT + JAVAで作業しています。GWTタイマを使用したループの遅延
私はすべてのファイルをダウンロードするユーザーを許可するように複数のウィンドウを開く必要があり
static int DELAY = 1000;
private void downloadAttachments(final List<String> ftIdList)
{
try
{
Timer timer = new Timer()
{
@Override
public void run()
{
int cnt = 1;
for (String url: ftIdList)
{
String windowName = "win" + cnt;
Window.open(url, windowName, "");
cnt++;
scheduleRepeating(DELAY*2);
}
cancel();
}
};
timer.run();
}
catch (Throwable exc)
{
Window.alert(exc.getMessage());
}
}
以下のように私は、GWTのコードの部分を持っています。
私はサーブレットを呼び出しています。
どのようにして次の反復までループに遅延を導入できますか?
GWTタイマーは、少なくとも最初のスケジュールされたイベントが発生する前に2回スケジュールすることはできません。 timer.scheduleRepeating(2000)を呼び出すと、内部的にcancel()が呼び出され、最初のスケジュール(500)が取り消されます。 – djjeck
@djjeckあなたは正しいです。答えが更新されます。ありがとうございました。 –
+1素晴らしい仕事。これは今日私を助けました。 –