Oi boa tarde estou com este problema . Uma thread para rodar em determinado horario. Mas quando chega o horario programado é lançada esta Exception. Se alguem puder ajudar de alguma forma agradeço.
public class Servico extends Thread {
private static long MILLI_SEC_DIA = 86400000; //Milisegundos em um dia
public static void main(String[] args) {
Servico servico = new Servico();
servico.start();
}
private static long getMilisegundos() {
Calendar calendario = Calendar.getInstance();
SimpleDateFormat format = new SimpleDateFormat("dd/MM/yyyy HH:mm:ss",new Locale"pt","BR"));
Date dataH = new Date();
dataH.setHours(13);
dataH.setMinutes(56);
dataH.setSeconds(59);
Date dataAtual = new Date(System.currentTimeMillis());
System.out.println("Hora Data Atual == "+format.format(dataAtual));
System.out.println("Horario e Data para Rodar Serviço Log == "+format.format(dataH));
return dataH.getTime() - dataAtual.getTime();
}
//Acontece este Erro
java.lang.IllegalArgumentException: timeout value is negative
at java.lang.Thread.sleep(Native Method)
at br.com.teste.Servico.run(Servico.java:44)