Medir tiempo de ejecución en JAVA

Hace poco un amigo me pregunto sobre un código para calcular el tiempo de una ejecución de un código en JAVA. Pues acordándome que hace algún tiempo yo había escrito algo parecido quería compartirlo con ustedes:
/* * Main.java
* Created on 13 de abril de 2008, 04:12 PM */
package medirtiempo;

/*@author sebas */
public class Main
{
public static void main(String[] args)
{
long tiempoInicio = System.currentTimeMillis();
ejecutaProceso1(); // aqui llama al método que quiere calcular el tiempo de ejecución
long totalTiempo = System.currentTimeMillis() - tiempoInicio;
System.out.println("El tiempo de demora es :" + totalTiempo + " miliseg");
}
static void ejecutaProceso1()
{
for (int i = 0; i < 1000; i++) // en i < 1000 se le puede colocar un valor mayor
{
String cad = " Esto es ";
cad += " una ";
cad += " prueba ";
System.out.println(" " + cad); // es por si se quiere imprimir lo que hay pero no es necesario
}
}
}

25 comentarios:

Denisse dijo...

gracias

Shyish dijo...

Gracias, me ha sido muy útil =P

Minrock dijo...

Te lo agradezco man, no sabes del trabajo que me has ahorrado =) 10/10 para ti =P

Anónimo dijo...

Muchas Gracias!!
En verdad

brahyam dijo...

GRACIASSSSSSSSSSSSSS SOS GROSO xD

Anónimo dijo...

Gracias, me salvaste la vida

Georg Gromsch dijo...

Muchas gracias, un siete.....

mayra dijo...

Te lo agradesco estuvo
de lujo gracias
te debo una jijiijiji

Anónimo dijo...

orales, gracias por el codigo, esta muy claro, muchas gracias!!.

Amnesia dijo...

Muchas gracias!

Amnesia dijo...

Muchas gracias!

Beimar Pereira dijo...

Que pongo en static void ejecutaProceso1(). El mismo codigo que escribi antes? Como hagoo??

Rodrigo Osorio López dijo...

Muy practico! excelente!

Luis Sanchez dijo...

hola man
yo utilizo ese metodo
de esta manera :
tiempoIni=System.currentTimeMillis();
Algoritmo();
tiempo=System.currentTimeMillis()-tiempoIni;
System.out.println("El tiempo de demora es :" + tiempo + " miliseg");
Y cuando muestra me sale : "0 miliseg"

y no entiendo porque =/

puede ser que mi metodo :
Algoritmo(){
Algoritmo1();
Algoritmo2();
}
y no considere los tiempo de aquellos algoritmo
me parece raro =/

Luis Sanchez dijo...

Cuando ejecuto mi programa
Tiempo inicial: 1322165614788 miliseg
Tiempo Final : 1322165614788 miliseg

El tiempo de demora es :0 miliseg

redwols dijo...

Hola a todos tengo una consulta, cuando ejecuto mi aplicacion por primera vez obtengo un tiempo de 'x' milisegundos pero cuando lo vuelvo a ejecutar obtengo un tiempo de 'y' milisegundos.
Es normal que el tiempo de ejecución cambie para un mismo proceso en momentos distintos?
Saludos y expero me puedan ayudar. gracias anticipadas.

oscar dijo...

excelete amigo!!!!

mamen dijo...

Recordar que la primera vez que se ejecuta un proceso, este se baja de memoria princial a cache. Esto hace que la primera vez tarde un poco mas. Para evitar esto, se calienta la caché ignorando la primera ejecución.

Un saludo.

Anónimo dijo...

Graaaaaaaaciaaas!!
justo justo.. xD

Anónimo dijo...

Gracias.

Anónimo dijo...

millón gracias... me fue de gran utilidad para mi tarea y también ahora se algo nuevo

edgar dijo...

me sirvió a las mil maravillas para lo que necesitaba, gracias por compartir

CINDY KATHERINE CHAVEZ VARGAS dijo...

Muchas gracias por tu ayuda me a salvado de jalar.. una pregunta como podrias hacer un trabajo de visual basic en java es decir hacer los graficos como de un sistema de una clinica

Anónimo dijo...

Muchas gracias... Buen día!!!

El lado oscuro de java dijo...

Hola, muy buena la info te agrego un link a mi blog en el cual tambien explico como pasar esos milisegundos resultantes a horas!

Saludos
http://java-white-box.blogspot.com/2013/07/java-code-como-calcular-el-tiempo-que.html