Есть ряд пользователей , каждый из которых имеет некоторое свойство. Пусть это свойство будет - 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.") ;
}
Айфон мало держит заряд, разбираемся с проблемой вместе с AppLab
Перевод документов на английский язык: Важность и ключевые аспекты
Часто в примерах по программированию в Android встречаю записи, например, такого вида:
Начал изучать JavaFX, и писать некоторые маленькие GUI приложенияВроде все хорошо, но когда перехожу на что-то сложное в коде всегда какой-то бардак...
Для реализации задачи, мне необходим Service который запускается при старте приложения и останавливается при закрытии