Foros del Web » Programación para mayores de 30 ;) » Java »

Salida lenta en imprimir letras

Estas en el tema de Salida lenta en imprimir letras en el foro de Java en Foros del Web. hola, estoy haciendo una aplicacion en donde la velocidad es crucial, y debo imprimir max 250 lineas de 250 caracteres. la cosa es que si ...
  #1 (permalink)  
Antiguo 05/10/2011, 20:50
Avatar de moscoquera  
Fecha de Ingreso: julio-2009
Mensajes: 51
Antigüedad: 14 años, 8 meses
Puntos: 1
Busqueda Salida lenta en imprimir letras

hola, estoy haciendo una aplicacion en donde la velocidad es crucial, y debo imprimir max 250 lineas de 250 caracteres. la cosa es que si pongo una letra a-z o A-Z se demora 6 segundos en imprimir esa matriz, pero si imprimo cualquier otro digito se demora menos de 1 segundo. asi que me llama la intencion que sea tan lento con las letras. ya intente algo con bufferedWriter pero sucede lo mismo.

alguien sabe como puedo hacer para que esos caracteres se impriman velozmente?
  #2 (permalink)  
Antiguo 06/10/2011, 02:13
Avatar de Fuzzylog  
Fecha de Ingreso: agosto-2008
Ubicación: En internet
Mensajes: 2.511
Antigüedad: 15 años, 7 meses
Puntos: 188
Respuesta: Salida lenta en imprimir letras

No es algo que sea normal, tendríamos que revisar el código para ver si hay algo que lo esté ralentizando...

Mientras te decides, si eres capaz de sacar algo provechoso de aquí, inténtalo: http://www.precisejava.com/javaperf/j2se/IO.htm
__________________
if (fuzzy && smooth) {
fuzzylog = "c00l";
return true;
}
  #3 (permalink)  
Antiguo 06/10/2011, 08:11
Avatar de moscoquera  
Fecha de Ingreso: julio-2009
Mensajes: 51
Antigüedad: 14 años, 8 meses
Puntos: 1
Respuesta: Salida lenta en imprimir letras

este es un codigo de prueba que demuestra lo que digo, si se ejecuta con un entero demora menos de 1 segundo, pero si se hace con una letra, por ejemplo la 'a' sube hasta 3 segundos:

Código:
public static void main(String Args[]){
        for (int i =0;i<250;i++){
            for (int j=0;j<250;j++){
            System.out.print('0');
        }
            System.out.println("");
        }   
    }
  #4 (permalink)  
Antiguo 06/10/2011, 08:32
Avatar de pablor21  
Fecha de Ingreso: noviembre-2008
Ubicación: Montevideo - Uruguay
Mensajes: 197
Antigüedad: 15 años, 5 meses
Puntos: 13
Respuesta: Salida lenta en imprimir letras

Hola, la verdad hice copie tu código y lo ejecuté, en el output del netbeans me pasó eso que comentas, pero luego lo probé en consola y no hubo diferencia de tiempo... lo has probado en una consola real? (estoy usando debian)
__________________
Desarrolloador Freelance - http://www.mvdit.com.uy
  #5 (permalink)  
Antiguo 06/10/2011, 08:49
Avatar de moscoquera  
Fecha de Ingreso: julio-2009
Mensajes: 51
Antigüedad: 14 años, 8 meses
Puntos: 1
Respuesta: Salida lenta en imprimir letras

Cita:
Iniciado por pablor21 Ver Mensaje
Hola, la verdad hice copie tu código y lo ejecuté, en el output del netbeans me pasó eso que comentas, pero luego lo probé en consola y no hubo diferencia de tiempo... lo has probado en una consola real? (estoy usando debian)
lo que sucede es que es para un juez online, asi que debo asegurar que funcione rapido en cualquier consola. con eclipse sucede lo mismo que sucede con netbeans.

ya logre bajarlo a la mitad del tiempo usando un StringBuilder, sin embargo se sigue demorando demasiado
  #6 (permalink)  
Antiguo 06/10/2011, 08:53
Avatar de Fuzzylog  
Fecha de Ingreso: agosto-2008
Ubicación: En internet
Mensajes: 2.511
Antigüedad: 15 años, 7 meses
Puntos: 188
Respuesta: Salida lenta en imprimir letras

Pues si solo pasa en el IDE debe ser algo de las preferencias del IDE o de las properties del proyecto lo que está causando la demora.

Según esto si reescribes bien el código podrías lograr una salida hasta un 90% más rápida...
http://www.rgagnon.com/javadetails/java-0603.html
__________________
if (fuzzy && smooth) {
fuzzylog = "c00l";
return true;
}

Última edición por Fuzzylog; 06/10/2011 a las 08:58

Etiquetas: lenta, letras, salida, aplicaciones
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 18:51.