7

一定時間後に呼び出される関数を作りたいです。また、これを同じ時間後に繰り返す必要があります。たとえば、この関数は 60 秒ごとに呼び出すことができます。

4

3 に答える 3

10

メソッドを繰り返し呼び出すには、バックグラウンドで実行される何らかの形式のスレッドを使用する必要があります。ScheduledThreadPoolExecutorの使用をお勧めします:

ScheduledThreadPoolExecutor exec = new ScheduledThreadPoolExecutor(1);
exec.scheduleAtFixedRate(new Runnable() {
           public void run() {
                // code to execute repeatedly
           }
       }, 0, 60, TimeUnit.SECONDS); // execute every 60 seconds
于 2012-07-10T15:15:46.853 に答える
10

とを使用するjava.util.Timer.scheduleAtFixedRate()java.util.TimerTask、可能な解決策があります。

Timer t = new Timer();

t.scheduleAtFixedRate(
    new TimerTask()
    {
        public void run()
        {
            System.out.println("hello");
        }
    },
    0,      // run first occurrence immediatetly
    2000)); // run every two seconds
于 2012-07-10T15:04:19.287 に答える