文件名称:JAVA网络编程课程设计
文件大小:22KB
文件格式:ZIP
更新时间:2022-06-28 22:32:38
java 线程池 socket
使用Java作为语言基础,服务端使用线程池管理线程,客户端分为读写两个线程分别管理Socket读写操作。其中服务端为解决多线程操作共享资源,确保线程安全摒弃资源消耗大的Synchronized使用ConcurrentHashMap存放Socket对象。 服务端: (1)连接客户端:实现与客户端的Socket通信。 (2)管理客户端:实现通过线程池管理客户端与服务端建立的Socket连接。 (3)群发功能:客户端选择群发功能,由客户端发送群发消息,服务端接收并转发至所有与本服务端保持连接的客户端。 (4)私聊功能:客户端选择私聊对象,由客户端发送私聊消息,服务端接收私聊消息并解析,发送至在线的特定客户端。 客户端: (1)连接服务端:进入通信模块界面后,与服务端建立Socket通信。 (2)群发功能:选择群发功能后,发送消息至服务端端,由服务端转发至所有在线客户端。 (3)私聊功能:选择私聊功能并选取私聊用户IP,发送消息至服务端,通过服务端解析,将消息转发至特定客户端。
【文件预览】:
ClintProcess
----src()
--------cn()
----.idea()
--------uiDesigner.xml(9KB)
--------misc.xml(278B)
--------modules.xml(273B)
--------workspace.xml(8KB)
----out()
--------production()
----ClintProcess1.iml(433B)
ServerProcess
----ServerProcess.iml(433B)
----src()
--------cn()
----.idea()
--------misc.xml(278B)
--------modules.xml(273B)
--------workspace.xml(7KB)
----out()
--------production()