多线程聊天软件
由于 UDP 采用无连接模式,可知 UDP 服务器在接收到客户端发来的数据之前,是不知道客户端的地址的,因此必须是客户端先发送数据,服务器后响应数据。而 TCP 则不同,TCP 服务器接受了客户端的连接后,既可以先向客户端发送数据,也可以等待客户端发送数据后再响应。
import threading
import socket
udp_socket=None
def send():
“”" 发送信息函数"""
while True:
sendinfo="小帅哥快来玩呀"
udp_socket.sendto(sendinfo.encode("utf-8"),("192.168.159.128",7777))
def rece():
“”“接受信息函数”""
while True:
data,address_info=udp_socket.recvfrom(1024)
print("发送人: %s,接受信息: %s"(address_info,data.decode("utf-8")))
def main_f():
“”“主函数”""
#声明全局变量
global udp_socket
创建socket
udp_socket=socket.socket(socket.AF_INET,socket.SOCK_DGRAM)
立即回收端口号
# udp_socket.setsockopt(socket.SOL_SOCKET,socket.