from threading import Thread
from socket import *
def recvData():
while True:
recvInfo = udpSocket.recvfrom(1024)
print(">>%s:%s"%(str(recvInfo[1]),recvInfo[0].decode("gb2312")))
def sendData():
while True:
sendInfo = input("<<")
udpSocket.sendto(sendInfo.encode("gb2312"),(destIp,destPort))
udpSocket = None
destIp = ""
destPort = 0
def main():
global udpSocket
global destIp
global destPort
destIp = str(input("请输入对方的ip: "))
destPort = int(input("请输入对方的port: "))
udpSocket = socket(AF_INET,SOCK_DGRAM)
udpSocket.bind(("",4567))
tr = Thread(target=recvData)
ts = Thread(target=sendData)
tr.start()
ts.start()
tr.join()
ts.join()
if __name__ == "__main__":
main()
使用多线程、udp实现双工聊天
最后编辑于 :
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。
推荐阅读更多精彩内容
- 网络编程概述 就是用来实现网络互连的不同计算机上运行的程序间可以进行数据交换。 有人说,20世纪最伟大的发明不是计...
- python中的socket套接字用于实现网络通信tcp套接字的使用流程如下: 创建套接字对象 --- cli...