123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354 |
- package com.company;
- import java.io.IOException;
- import java.io.InputStream;
- import java.io.OutputStream;
- import java.net.Socket;
- import java.util.List;
- public class Client extends Thread {
- private Socket socket;
- private List<Client> clientList;
- public Client(Socket socket, List<Client> clientList) {
- this.socket = socket;
- this.clientList = clientList;
- }
- @Override
- public void run() {
- byte[] data = new byte[2048];
- while (!isInterrupted()) {
- try {
- InputStream is = socket.getInputStream();
- is.read(data);
- System.out.println(new String(data));
- for (Client client : clientList) {
- // Отправить сообщение
- if (client.socket != this.socket) {
- OutputStream os = client.socket.getOutputStream();
- os.write(data);
- os.flush();
- }
- }
- } catch (IOException exception) {
- // exception.printStackTrace();
- System.out.println(socket.getInetAddress().getHostAddress() + " disconnected");
- clientList.remove(this);
- interrupt();
- }
- }
- }
- }
|