Como Cronometrar um disparo de um método em java

6 respostas
H

Gente to querendo contar a partir do disparo de uma atividade.

Ou seja contar o tempo do sistema na hora que inicia, e o tempo quando termina.

Como faço isso ? :?:

6 Respostas

renanedpedroso

Eu faço assim:

long time = System.currentTimeMillis();

//executa alguma coisa

time = System.currentTimeMillis() -time;
//converte de milissegundos para segundos
double timeDouble = time/1000.0;
System.out.println(timeDouble+" segundos.");

Espero ter ajudado.

Abraço!

rogelgarcia

É interessante usar um for… e executar o método várias vezes para ter um valor melhor…

As vezes uma única chama é tao rápido… que os milisegundos nao serao precisos o suficiente…

H

valeu d+.

Resolveu minha dúvida.

Obrigado.

sergiotaborda

É melhor ainda usar System.currentNanos() porque não depende do relógio e sim do processamento.

renanedpedroso

Esse método System.currentNanos() eu não conhecia, vou testar.

Valeu!

ViniGodoy

Se estiver interessado em fazer profiling e identificar gargalos na sua aplicação, é melhor usar o VisualVM, que já vem com o JDK 6:
https://visualvm.dev.java.net/

Assim vc nem precisa escrever código que mede tempo no meio das suas classes.

Criado 19 de março de 2010
Ultima resposta 19 de mar. de 2010
Respostas 6
Participantes 5