Re:Criar Thread que saiba o tempo de execução de um método

4 respostas
ViniGodoy

Não converta seu valor para long. Isso irá truncar o valor (eliminar as casas decimais) e não arredonda-lo.

Exiba em double mesmo:

long inicio = System.currentTimeMillis(); GerenciadorArquivo.obterInstancia().validarIntegridadeListaArquivosSistema(); double tempo = (System.currentTimeMillis() - inicio) / 1000.0; System.out.printf("Levou %.3f segundos", tempo);

4 Respostas

ViniGodoy

Vá no primeiro tópico que você criou, clica em editar e altere o título.

Cleo_Nascimento

Olá pessoal andei pesquisando mas até agora nada!
Meu problema é o seguinte eu gostaria de criar uma Thread que soubesse o tempo de execução de um método, para usar isto em um SwingWorks
pois quero 2 barras de progresso um com o tempo total da execução e outra com o tempo parcial.

A segunda barra com o tempo parcial, contaria o tempo de execução de 4 ou 8 métodos executados um após o outro;
estou checando coisas do sistema como: integridade dos aquivos do sistema, licenciamento, atualização bom espero que alguem possa me ajudar!

Cleo_Nascimento

Pessoal estou trabalhando em algo parecido com isso para obter o que preciso:

long inicio = System.currentTimeMillis();

GerenciadorArquivo.obterInstancia().validarIntegridadeListaArquivosSistema();
                   
                   long fim  = System.currentTimeMillis(); 
                   long tempo = (fim - inicio);
                   System.out.println( fim - inicio );  
                   
                   tempo = (long) (tempo * (Math.pow(10, -3)));	                   
                   System.out.println(tempo);

porem o valor esta vindo errado de 1segundo onde o correto seria de 1,695 e arredondando seria de 2 segundos alguem poderia me informar o que esta dando errado?

Cleo_Nascimento

Muito obrigado ViniGodoy era exatamente isso que eu estava errado!

Desculpa a pergunta besta mas como seto como resolvido?

Criado 12 de outubro de 2010
Ultima resposta 13 de out. de 2010
Respostas 4
Participantes 2