Написание p2p сервера на java

338
15 июля 2017, 07:18

Есть ряд пользователей , каждый из которых имеет некоторое свойство. Пусть это свойство будет - ID. При подключению к серверу, пользователь отправляет свой ID, -> сервер дальше расфасовывает пользователей по их ID в комнаты.

Я попытался сделать так: сервер ждет accept, потом читает сообщение от клиента (что является его ID) и добавляет его в комнату. Так вот, беда в том, что созданный поток ввода для считывания этого ID не позволяет создать новый поток ввода уже в новом thread для этого пользователя в комнате. public class MTS implements Runnable{

protected int          serverPort   = 4224;
protected ServerSocket serverSocket = null;
protected boolean      isStopped    = false;
private String Inp;
private BufferedReader in = null;
private distributor Distributor = new distributor();
MTS(int PORT_WORK) {
    this.serverPort = PORT_WORK;
}
     @Override
   public void run()
  {
   OpenServerSocket();
   while(!isStopped()){
       Socket clientSocket = null;
       try{
           clientSocket = this.serverSocket.accept();

       }
       catch(IOException e){
            if(isStopped()) {
                System.out.println("Server Stopped.") ;
                return;
            }
            throw new RuntimeException("Error accepting client 
   connection",e);
        }
        //вот из-за этих строк проблема
             try{
           in  = new BufferedReader(new 
           InputStreamReader(clientSocket.getInputStream()));
           Inp = in.readLine();
           System.out.print(" " + Inp + " ");
            }catch(IOException e)
       {
              System.out.println(e) ;
       }

           Distributor.Checker(clientSocket, Inp); // создание комнаты
      }
   System.out.println("Server Stopped.") ;

}

READ ALSO
Как правильно писать код

Как правильно писать код

Часто в примерах по программированию в Android встречаю записи, например, такого вида:

446
Работа с ANTLR4

Работа с ANTLR4

Не пойму почему конец файла не определяется?

241
Какие есть open-source GUI проекты на JavaFX/Swing? [требует правки]

Какие есть open-source GUI проекты на JavaFX/Swing? [требует правки]

Начал изучать JavaFX, и писать некоторые маленькие GUI приложенияВроде все хорошо, но когда перехожу на что-то сложное в коде всегда какой-то бардак...

247
Жизненный цикл android приложения

Жизненный цикл android приложения

Для реализации задачи, мне необходим Service который запускается при старте приложения и останавливается при закрытии

272