¿Cómo muevo el envío y la recepción de mensajes a un hilo del servidor?

Tengo un juego de clase que usa una clase TCPServer. Me gustaría separar todo el bajo nivel de envío y recepción TCPServer. Entonces le doy TCPServerun hilo separado que lee constantemente los mensajes entrantes. Me gustaría devolver estos mensajes a Game. Pero no sé cómo hacer esto. GameTambién debería reaccionar ante estos mensajes respondiendo enviando un mensaje a los clientes.

Creo / sé que es posible moviendo el hilo de TCPServera Gamepero ¿es esta la mejor manera de resolver esto? ¿No es mejor mantener las 2 clases separadas?

Tengo el siguiente pseudocódigo.

public class Game{
   TCPServer tcpServer = new TCPServer();

   public void execute(){
       // do something
       Object o = new Object;
       send(o);

       if(receive(o)){  // WRONG
          // do something with the receive object
       }
   }

   private void send(Object o){
      tcpServer.send(o);
   }

   private Object receive(Object o){
      return tcpServer.receive(o);
}

public class TCPServer extends Thread{
   private ServerSocket serverSocket;
   Socket client = new Socket;

   public void run(){
     Object o = receive();
     // How do I get this object o in the Server class in function execute()?
   }

   private Object receive(){
      return serverSocket.listen();

   }

   public void send(Object o){
      client.send(o);
}
Respuesta 1

He visto en aplicaciones como Facebook, esa intención de llamar a hacer un efecto de pantalla que va de abajo hacia arriba, o de izquierda a derecha o de arriba a abajo ... Busqué y no pude encontrar como nadie sabe ...

String tmp = "Hace 4 días <b> ... </b> Jon fundó el video <b> Yahoo </b>! Y también"; Quiero eliminar "hace 4 días <b> ... </b>" de la cadena. Por favor hagamelo saber ...

Tengo una tabla que extiende AbstractTableModel. Cuando llegan los datos, elimino las filas y las vuelvo a crear con datos nuevos. Lo que no entiendo es por qué tengo que llamar a lo siguiente: ...

¿Cuál es la diferencia (ventajas / desventajas de ambos) entre OracleCachedRowSet y RowSet en Java?