Я создаю серверную клиентскую программу, где клиент отправляет определенную информацию на сервер и получает соответствующий ответ от сервера.
Для непрерывного прослушивания от нескольких клиентов у меня есть поток на сервере, который постоянно прослушивает запрос клиента. при получении запроса я запускаю другой поток и отправляю этот сокет для запуска и начинаю прослушивать запрос других клиентов.
вот код для непрерывного прослушивания
while(true){
//serverListener is a ServerSocket object
clientSocket = serverListener.accept();//Waiting for any client request
//New thread started when request is received from any client
Thread thread =new Thread(new serverThread(clientSocket), "ClientThread");
thread.start();
}
Теперь моя проблема в том, как я могу остановить сервер. Я знаю одну альтернативу использования переменной boo lean в цикле while и последующем изменении значения, но проблема в том, что когда поток ожидает получения какого-либо соединения в это время, изменение значения логической переменной также не остановит сервер.
Есть ли способ решить эту проблему.