Server.java 1.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051
  1. package com.company;
  2. import java.io.IOException;
  3. import java.net.ServerSocket;
  4. import java.net.Socket;
  5. import java.util.ArrayList;
  6. public class Server {
  7. private ServerSocket socket;
  8. private boolean interrupt;
  9. private ArrayList<Client> clients;
  10. public Server() throws IOException {
  11. socket = new ServerSocket(8080);
  12. interrupt = false;
  13. clients = new ArrayList<>();
  14. }
  15. public void Run() {
  16. while (!interrupt) {
  17. try {
  18. Socket clientSocket = socket.accept();
  19. Client client = new Client(clientSocket);
  20. // Добавление клиента в список всех подключенных клиентов
  21. clients.add(client);
  22. // Старт работы потока с подключенным клиентом
  23. client.start();
  24. } catch (IOException exception) {
  25. System.out.println(exception.getMessage());
  26. }
  27. }
  28. for (Client cl: clients) {
  29. cl.interrupt();
  30. try {
  31. cl.join();
  32. } catch (InterruptedException exception) {
  33. System.out.println(exception.getMessage());
  34. }
  35. }
  36. }
  37. public boolean isInterrupt() {
  38. return interrupt;
  39. }
  40. public void Interrupt(boolean interrupt) {
  41. this.interrupt = interrupt;
  42. }
  43. }