python3实现多线程聊天室
使用python3创建多线程聊天室,供大家参考,具体内容如下
import threading import socket #socket udpSocket = None #计数器 num = 1 #1.创建接受,发送方法 def inMessage(): global num while True: #等待接收消息 data = udpSocket.recvfrom(1024) #4. 将接收到的数据再发送给对方 udpSocket.sendto(data[0], data[1]) #打印获得的消息 print("\r>> 消息%d => 来自:%s => %s"%(num,data[1],data[0].decode('gb2312'))) print('\r>>',end='') #消息数量+1 num+=1 def outMessage(): while True: #发送地址 sendAddr = ('192.168.106.132',8080) #获得输入数据 senddata = input('\r>>') #发送消息 udpSocket.sendto(senddata.encode('gb2312'),sendAddr) #2.使用多线程执行接收发送 def main(): global udpSocket #创建socket udpSocket = socket.socket(socket.AF_INET,socket.SOCK_DGRAM) #绑定端口 udpSocket.bind(('',8686)) #创建线程 t1 = threading.Thread(target=inMessage) t2 = threading.Thread(target=outMessage) #启动线程 t1.start() t2.start() #主线程堵塞 t1.join() t2.join() #3.主方法运行 if __name__ == "__main__": main()
效果图:
相关推荐
rootsky 2020-03-04
VanTYS 2020-01-10
疯狂紫萧 2019-12-14
afanti 2019-11-09
RopenYuan 2011-04-30
yangkunlun 2019-08-20
luckysyy 2019-08-21
wangfuxu 2019-09-06
ghpan 2019-04-11
ywwazyj 2019-05-20
Alostz 2014-10-13
huaye00 2019-06-30
chenshengzun 2015-03-26
adonislu 2019-06-30
wenf00 2019-06-30
wildelf 2014-10-20
xxg0 2014-09-29