Temporarizador de tarefa

7 respostas
C

Pessoal alguém pode me ajudar?
Estou fazendo um programa que precisa ativar uma classe em 5 e 5 segundos. Alguém tem um código que faça esse ?temporarizador??

7 Respostas

cassio

Olá!

Já pensou em usar Thread?!

Bohzzu

dê uma olhada em java.util.concurrent.ScheduledExecutorService
Há também a classe java.util.Timer pra fazer isso, mas é recomendado usar a primeira opção.

C

Cara acho que isso serve sim, valeu.

O

Bom dia senhores,

Você poderia utilizar o framework Quartz. A java magazine desse mes sairá com uma matéria a respeito.

Abraço.

A

Olá,

Se você estiver usando o Java SE pode usar as classes java.util.Timer e java.util.TimerTask.

Se estiver num ambiente corporativo também recomendo o Quartz. Esse framework funciona tanto na Web quanto em desktop.

André

C

Pessoal, resolvi meu problema com o seguinte código:

import java.util.concurrent.Executors;

import java.util.concurrent.ScheduledExecutorService;

import java.util.concurrent.ScheduledFuture;

import static java.util.concurrent.TimeUnit.*;
class BeeperControl {

private final ScheduledExecutorService scheduler =

Executors.newScheduledThreadPool(1);
public void beepForAnHour() {
    final Runnable beeper = new Runnable() {
            public void run() { System.out.println("beep"); }
        };
    final ScheduledFuture<?> beeperHandle = 
        scheduler.scheduleAtFixedRate(beeper, 10, 10, SECONDS);
    scheduler.schedule(new Runnable() {
            public void run() { beeperHandle.cancel(true); }
        }, 60 * 60, SECONDS);
}

}

Obrigado a todos a atenção

C

Também achei:

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[]) {
System.out.println(About to schedule task.);

new Reminder(5);

System.out.println(Task scheduled.);

}

}
Criado 3 de novembro de 2006
Ultima resposta 3 de nov. de 2006
Respostas 7
Participantes 5