Foro de elhacker.net

Programación => Java => Mensaje iniciado por: Aikanáro Anário en 15 Diciembre 2011, 04:36 am



Título: Tiempo de ejecución en Eclipse
Publicado por: Aikanáro Anário en 15 Diciembre 2011, 04:36 am
Si no mal recuerdo eclipse dice el tiempo de ejecución que dura un programa pero parece que me he puesto a tocar algo y ahora no lo presenta o tal vez nunca lo presentó y yo me hice ilusiones xD. Alguien que me saque de la duda si se puede poner ¿cómo lo hago?


Título: Re: Tiempqo de ejecución en Eclipse
Publicado por: Proteus1989 en 15 Diciembre 2011, 10:18 am
Yo no he visto que lo haga...
Como yo calculo eso es con la función System.nanoTime();
Pones una al principio del código y lo guardas en en long y al final del cógido un print de System.nanoTime() - primerTiempo;

Si no quieres tanta precisión también tienes la System.currentTimeMillis().

Y si estás en linux en el interprete de comandos escribe: time java........


Título: Re: Tiempo de ejecución en Eclipse
Publicado por: Aikanáro Anário en 15 Diciembre 2011, 15:10 pm
Bueno, el problema es que lo que quiero calcular en específico es cuanto dura un método ejecutándose. Porque el programa pide un número, con ese número entonces hace las operaciones, lo que quiero calcular es cuanto dura la operación, solamente la operación. Porque puede ser que el usuario dure hasta minutos para entrar un numero o depende de la velocidad de tipeo ¿el comando time me da tres tiempos, cuál de ellos me sirve para lo que quiero? ¿o podría hacerlo como dices con el tiempo del sistema al principio del método y al final del mismo?


Título: Re: Tiempo de ejecución en Eclipse
Publicado por: 1mpuls0 en 15 Diciembre 2011, 19:21 pm
Hola.
Se puede hacer con los métodos que ya te mencionaron, por ejemplo.

Código
  1. public class TiempoEjecucion{
  2. public static void main(String args[]){
  3. new TiempoEjecucion();
  4. }
  5.  
  6. public TiempoEjecucion(){
  7. int numero=10; //Aquí ingresas el número
  8. long tiempoInicio=System.currentTimeMillis(); //Aquí se toma el tiempo de incio despues de haber ingresado el numero
  9. ejecutaProceso(); //Aquí el método a ejecutar
  10. long tiempoFinal=System.currentTimeMillis();
  11. long tiempoTotal=tiempoFinal-tiempoInicio;
  12. System.out.println("Tiempo de ejecucion "+tiempoTotal+" milisegundos");
  13. }
  14.  
  15. public void ejecutaProceso(){
  16. for (int i = 0; i < 1000; i++){
  17. System.out.print(i);
  18. }
  19. }
  20. }
  21.  

Disculpa si hay errores de sintaxis, no lo he probado pero debe de funcionar.

Saludos.


Título: Re: Tiempo de ejecución en Eclipse
Publicado por: Proteus1989 en 15 Diciembre 2011, 19:40 pm
Buen ejemplo Darhius ;)


Título: Re: Tiempo de ejecución en Eclipse
Publicado por: Aikanáro Anário en 16 Diciembre 2011, 00:05 am
Gracias gente, ya sé como lo voy hacer.