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

Swing + Thread + Procesos Pesados

Estas en el tema de Swing + Thread + Procesos Pesados en el foro de Java en Foros del Web. Hola la cuestion que os propongo es sobre Swing y Threads. Tengo una interfaz con un JDesktopPane y cada uno de sus frames internos puede ...
  #1 (permalink)  
Antiguo 04/11/2004, 16:40
 
Fecha de Ingreso: noviembre-2002
Ubicación: Madrid
Mensajes: 24
Antigüedad: 22 años
Puntos: 0
Swing + Thread + Procesos Pesados

Hola la cuestion que os propongo es sobre Swing y Threads.
Tengo una interfaz con un JDesktopPane y cada uno de sus frames internos
puede ejecutar un Thread con un proceso pesado, lo tengo implementado con
SwingWorker de por medio, pero el problema es que una vez finalizado el proceso
pesado tiene que mostrar en un JTextPane un montón de texto generado.

En un principio el texto que se iba a mostrar se añadía al finalizar para que no bloqueara la interfaz, pero torpe de mi el texto se iba añadiendo como
Código PHP:
texto+="masTexto" 
Esto probocaba que el proceso tardara un 1000% mas que si no se mostraba el texto.

Para solucionarlo cree un buffer intermedio (unos 64KB) que cuando se llena vuelca la texto al JTextPane.

Bueno lo que quería saber es si hay alguna otra forma de solucionar este
problema
__________________

La solidaridad es la ternura de los pueblos
  #2 (permalink)  
Antiguo 04/11/2004, 23:34
 
Fecha de Ingreso: noviembre-2004
Mensajes: 11
Antigüedad: 20 años
Puntos: 0
seguramente hay otras formas (almacenar la salida en un archiv temporal entre otras) ... pero lo mas sensato es usar un buffer... por cierto el operador + para String en java es muy ineficiente (no se como estas implementando el buffer)


espero que te ayude en algo...
  #3 (permalink)  
Antiguo 05/11/2004, 07:48
Avatar de hugo777  
Fecha de Ingreso: enero-2002
Ubicación: Lima, Perú
Mensajes: 757
Antigüedad: 22 años, 10 meses
Puntos: 1
Hola, otra forma, es utilizar StringBuffer y usar append, que es mucho mas eficiente que String y el operador +. Sin embargo, no se si será tan o más eficiente que la forma que has implementado... podrías mostrarnos algo más de la implmentación que has aplicado?
__________________
Saludos,

H@C..
  #4 (permalink)  
Antiguo 06/11/2004, 08:49
 
Fecha de Ingreso: noviembre-2002
Ubicación: Madrid
Mensajes: 24
Antigüedad: 22 años
Puntos: 0
Hola, el buffer lo tengo implementado como dice hugo777, con un StringBuffer y funciona
bastante bien.

Gracias.
__________________

La solidaridad es la ternura de los pueblos
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 22:08.