Ver Mensaje Individual
  #3 (permalink)  
Antiguo 30/01/2014, 14:04
drakgoku1
(Desactivado)
 
Fecha de Ingreso: agosto-2011
Mensajes: 327
Antigüedad: 13 años, 2 meses
Puntos: 3
Respuesta: Duda acerca de Threads

Cita:
Iniciado por pablor21 Ver Mensaje
Al tener más de un hilo, obviamente consume más recursos mientras estos se ejecutan, porque si bien no son 2 procesos, los hilos se ejecutan "a la misma vez" y por lo tanto cada uno de ellos solicitará al sistema los recursos que necesita...

Lo de que vaya más lento no lo entiendo del todo...

Los listeners no necesitan hilos, si estás creando tus propios Events/Listeners te recomiendo leer un poco más (si buscas en google encontrarás abundante info al respecto), pero básicamente tendrás una Interface para el Evento otra para el Listener y luego en la clase que lanzará los eventos tendrás una lista de quiénes están escuchando y les avisarás a cada uno... algo así:

Código Java:
Ver original
  1. interface HelloListener {
  2.     public void someoneSaidHello();
  3. }
  4.  
  5.  
  6. class Initiater {
  7.     List<HelloListener> listeners = new ArrayList<HelloListener>();
  8.  
  9.     public void addListener(HelloListener toAdd) {
  10.         listeners.add(toAdd);
  11.     }
  12.  
  13.     public void sayHello() {
  14.         System.out.println("Hello!!");
  15.  
  16.         // Notify everybody that may be interested.
  17.         for (HelloListener hl : listeners)
  18.             hl.someoneSaidHello();
  19.     }
  20. }
  21.  
  22.  
  23. class Responder implements HelloListener {
  24.     @Override
  25.     public void someoneSaidHello() {
  26.         System.out.println("Hello there...");
  27.     }
  28. }

Gracias por la información, pero yo decía listeners de escucha.

Es decir tengo el servidor xmpp, y a su vez necesito un método que escuche los paquetes de entrada y salida (ya lo solucioné, fallo tonto de la sala ;) )

y me pregunto si esas clases de Linstener tienen algun thread.

Recuerdo que trabajando en una api de android tenía un run simple que ese run estaba lleno de listeners, según lo que vi, ese run se tendría que terminar al instante pero seguía su curso eso me dio en que pensar. por eso pregunte si un listener que escucha (puerto, conexión, sala) tiene algún run, creo o alguna recursión.

Se que los awt, como son los botones y eso que tienen listeners básicos, no necesitan mucha cosa.

Al igual me especifiqué mal en la pregunta, mil perdones.

En eclipse no puedes , pero en netbeans puedes ver todo el código fuente del jar escrito en java.

Yo uso la librería "smack"

ejemplo :
org.jivesoftware.smack.ChatManagerListener
org.jivesoftware.smack.MessageListener;

pero los listeners de mensajerías tienen algún run ??