Existe algum comando para o Timer retomar?

Boa noite, estou tentando fazer um método usando o Timer no Netbeans, em um certo momento preciso que ele pare então usei o timer.cancel();, mas em outro momento especifico preciso que ele “retome”, como fazer ele retomar?

Faça o schedule novamente.

1 curtida

Vou dar uma estuda sobre, valeu.

Então toda vida que eu der um cancel eu tenho que criar o run() de novo? Se eu precisar que ele pare diversas vezes vou ter que criar o schedule sempre?

Quando você faz um schedule, você passa um objeto Runable como parâmetro, você pode fazer o schedule do mesmo objeto quantas vezes quiser.

Desculpa, mas eu não entendi. No meu método eu não estendi o Runnable. O Rannable que você fala é o método run()? Achei que o Runnable era um thread e o Timer se diferenciava dela.

 timer.scheduleAtFixedRate(new TimerTask() {
        @Override
        public void run() {
            if(!jTextField1.getText().equals("")){
                System.out.println(jTextField1.getText());
                timer.cancel();
            } else {
                System.out.println("Esperando...");
            }               
        }
    }, 0, 1000);

Meu método exemplo ficou assim se o Runnable está ai eu realmente não sei onde está.

Desculpe, falha minha, quis dizer o TimerTask, acabei falando Runnable pois ambos definem o método run().

Então, no seu exemplo você sempre cria um novo TimerTask, você poderia reaproveitar a mesma instância.