"
套接字
"
,用于描述
IP
地址和端口,是一个通信链的句柄,可以用来实现不同虚拟机或不同计算机之
间的通信。在
Internet
上的主机一般运行了多个服务软件,同时提供几种服务。每种服务都打开一个
Socket
,并绑定到一个端口上,不同的端口对应于不同的服务。
Socket
正如其英文原意那样,像一个
多孔插座。一台主机犹如布满各种插座的房间,每个插座有一个编号,有的插座提供
220
伏交流电,
有的提供
110
伏交流电,有的则提供有线电视节目。
客户软件将插头插到不同编号的插座,就可以得
到不同的服务。
2
程序介绍
2.1 Server
本服务用于开启聊天室的服务功能,实现验证客户,监听用户事件,监控用户聊天行为和转发聊天消
息。其中:
tell
主要实现聊天信息的转发功能,通过查询用户列表筛选出列表之外的用户,并同时将聊天的用户
名,时间,以及聊天的内容转发出去
serverFunc
实现了接收用户的昵称,监控并通知用户行为的功能
main
完成了初始的验证和建立连接的过程
特点:
利用了
socket
中的
SOCK_STREAM
实现
TCP
连接
使用了多线程的方法,避免程序阻塞