无法在GWT中取消重复计时器

时间:2013-04-26 16:04:11

标签: java gwt timer setinterval

我正在尝试在GWT中安排一个重复计时器,它将每隔1毫秒运行一次,对特定事件进行轮询,如果发现满意,则执行某些操作并取消计时器。 我试过这样做:

final Timer t = new Timer() {
    public void run() {
        if (..condition is true, exit) {
            t.cancel();
            doSomething();
        }
    }
}
t.scheduleRepeating(1);

但是,我收到一条错误消息,例如本地变量t可能尚未初始化。我将一段代码放在onSuccess回调的RequestBuilder子句中。我如何实现这一目标?

1 个答案:

答案 0 :(得分:9)

初始化时无法访问它。将代码更改为

 final Timer fgf = new Timer() {

            @Override
            public void run() {
                  cancel();
                  System.out.println();

            }
        };