Skip to content

A multithreaded socket server application that accepts client connections and handles their requests asynchronously. Includes both server and client implementations for real-time communication.

License

Notifications You must be signed in to change notification settings

yataknemogy/MultithreadedSocketServer

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

6 Commits
 
 
 
 
 
 
 
 

Repository files navigation

Многопоточный сокетный сервер

Это приложение представляет собой многопоточный сокетный сервер, способный принимать подключения от клиентов и обрабатывать их запросы асинхронно.

Структура и функциональность

Server.java

  • Метод main: входная точка программы. Использует ServerSocket для прослушивания подключений на заданном порту.
  • В бесконечном цикле вызывается метод accept() для ServerSocket, который блокируется, пока не будет получено новое подключение от клиента. После этого создается новый поток для обработки взаимодействия с клиентом.
  • Метод handleClient: создает BufferedReader для чтения входящих сообщений от клиента и в бесконечном цикле считывает сообщения. Полученное сообщение отправляется всем остальным клиентам через метод broadcastMessage.
  • Метод broadcastMessage: перебирает всех подключенных клиентов и отправляет полученное сообщение каждому клиенту, за исключением отправителя.
  • Блок finally закрывает сокет клиента после завершения взаимодействия.

Client.java

  • Клиентская программа создает сокет для подключения к серверу по заданному адресу и порту.
  • В методе main создается поток для приема сообщений от сервера, а основной поток отвечает за отправку сообщений серверу и чтение ввода пользователя с консоли.
  • При завершении ввода со стороны пользователя (путем ввода null), закрывается сокет и завершается соединение с сервером.

About

A multithreaded socket server application that accepts client connections and handles their requests asynchronously. Includes both server and client implementations for real-time communication.

Topics

Resources

License

Stars

Watchers

Forks

Languages