Metodo executando em intervalos de temo

1 resposta
D

Como eu faço para que um método seja executado, por exemplo, de 30 em 30 segundos?

1 Resposta

F

A maneira mais simples é colcoar a chamada do método em um loop e usar o método sleep da classe Thread para a Thread dormir pelo tempo que você quiser.

Mas se você quiser fazer bem feito com scheduling use as classes Timer e TimerTask. Ex:

import java.util.Timer;
import java.util.TimerTask;

/**
 * Simple demo that uses java.util.Timer to schedule a task 
 * to execute once 5 seconds have passed.
 */

public class Reminder {
    Timer timer;

    public Reminder(int seconds) {
        timer = new Timer();
        timer.schedule(new RemindTask(), seconds*1000);
	}

    class RemindTask extends TimerTask {
        public void run() {
            System.out.println("Time's up!");
            timer.cancel(); //Terminate the timer thread
        }
    }

    public static void main(String args[]) {
        new Reminder(5);
        System.out.println("Task scheduled.");
    }
}
Criado 5 de março de 2005
Ultima resposta 5 de mar. de 2005
Respostas 1
Participantes 2