一、程序
程序1:
# 创建聊天室
from threading import Thread
from socket import *
import struct
s = socket(AF_INET, SOCK_DGRAM)
s.bind(('', 8788))
def func1(): # 发送消息
send_data = input('我:')
s.sendto(send_data.encode(), ('192.168.1.6', 8585))
def func2(): # 接收消息
redata = s.recvfrom(1024)
print('李四:', redata[0].decode())
if __name__ == '__main__':
while True:
t1 = Thread(target=func1())
t2 = Thread(target=func2())
t1.start()
t2.start()
s.close()
程序2:
# 创建聊天室
from threading import Thread
from socket import *
import struct
s = socket(AF_INET, SOCK_DGRAM)
s.bind(('', 8585))
def func1(): # 发送消息
send_data = input('我:')
s.sendto(send_data.encode(), ('192.168.1.6', 8788))
def func2(): # 接收消息
redata = s.recvfrom(1024)
print('张三:', redata[0].decode())
if __name__ == '__main__':
while True:
t1 = Thread(target=func1())
t2 = Thread(target=func2())
t2.start()
t1.start()
s.close()
二、运行结果


三、疑问
老师请问,我的my05发送消息给my06时,my06接收到消息但是不输出,只有my06给my05回消息时,my06之前接收到的消息才输出,是哪里出错了?