0

我想创建一个对象,它将调用loadNextImage每隔 1000 毫秒调用一次的方法。我可以通过创建一个新Thread的睡眠 1000 然后调用此方法来做到这一点,但我不知道如何做到这一点。

4

2 回答 2

1

只需使用ScheduledExecutorService

final ScheduledExecutorService service = Executors.newSingleThreadScheduledExecutor();
service.scheduleWithFixedDelay(new Runnable() {
    @Override
    public void run() {
        loadNextImage();
    }
}, 0, 1, TimeUnit.SECONDS);

Runnable这将每秒运行一次提交。

您创建一个匿名class的,implements Runnable并在其run方法中调用您的loadNextImage()方法。

于 2013-05-12T16:30:19.163 回答
0

有一个java.util.Timer为此目的而设计的类:

http://docs.oracle.com/javase/6/docs/api/java/util/Timer.html#scheduleAtFixedRate%28java.util.TimerTask,%20long,%20long%29

您只需要实现TimerTask重复操作将在其中执行的子类。

于 2013-05-12T16:28:30.107 回答