python实现udp聊天器多任务

import socket
import threading

# 接收消息


def recv_msg(udp_socket):
    while True:
        recv_data = udp_socket.recvfrom(1024)
        print(recv_data[0].decode('utf-8'))
# 发送消息


def send_msg(udp_socket, des_ip, des_port):
    while True:
        send_msg = input("请输入要发送的消息:")
        udp_socket.sendto(send_msg.encode('utf-8'), (des_ip, des_port))


def main():
    # 1.创建套接字
    udp_socket = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)
    # 2.绑定本地信息
    udp_socket.bind(("", 7780))
    # 3.获取对方的ip和port
    des_ip = input("请输入对方的ip:")
    des_port = int(input("请输入对方的port:"))

    # 4.创建两个线程,执行功能
    t_send = threading.Thread(target=send_msg, args=(udp_socket, des_ip, des_port))
    t_recv = threading.Thread(target=recv_msg, args=(udp_socket,))
    t_send.start()
    t_recv.start()


if __name__ == '__main__':
    main()

猜你喜欢

转载自blog.csdn.net/qq_40808154/article/details/89192393