服务端流程:创建一个socket,绑定端口,监听端口,接收客户端连接,利用多线程来实现多客户端连接
import socket,threading
soc = socket.socket(socket.AF_INET, socket.SOCK_STREAM, 0)
soc.bind(("192.168.100.112", 30000))
#用于保存客户端的连接
clientList = []
#线程函数
def server_target(server_socket):
while True:
content = server_socket.recv(2048).decode('utf-8')
if content is not None:
print(content)
if content=='exit':
server_socket.send(''.encode('utf-8'))
clientList.remove(server_socket)
#广播接收的信息
for c in clientList:
c.send(content.encode('utf-8'))
if content=='exit':
server_socket.close()
break
soc.listen()
while True:
#accept返回客户端连接,和地址
clientSoc,addr = soc.accept()