多线程的UDP聊天器

# pcjimport  socketimport threading# def recv_msg(udp_socket):#     while True:#         recv_date = udp_socket.recvfrom(1024)#         print(recv_date[0].decode("gbk"),recv_date[1])## def send_msg(udp_socket,dest_ip,dest_port):#     while True:#         send_date = input("请输入要发送的信息")#         udp_socket.sendto(send_date.encode("gbk"),(dest_ip,dest_port))### def main():#     # 创建UPD套接字#     udp_socket=socket.socket(socket.AF_INET,socket.SOCK_DGRAM)#     # 邦定本地信息#     udp_socket.bind(("",9999))#     dest_ip = input("请输入对方IP")#     dest_port = int(input("请输入PORT"))#     #接收信息#     t_recv=threading.Thread(target=recv_msg,args=(udp_socket,))#     t_send =threading.Thread(target=send_msg,args=(udp_socket,dest_ip,dest_port))#     t_recv.start()##     #发送信息#     t_send.start()#0--------再写一次def send_msg(udp_socket,dest_ip,dest_port):    while True:        send_date = input("请输入要发送的信息")        udp_socket.sendto(send_date.encode("gbk"), (dest_ip, dest_port))

def recv_msg(udp_socket):    while True:        recv_date = udp_socket.recvfrom(1024)        print(recv_date[0].decode("gbk"))def main():    # 创建套接字    udp_socket=socket.socket(socket.AF_INET,socket.SOCK_DGRAM)

    udp_socket.bind(("",9999))    dest_ip = input("请输入IP")    dest_port = int(input("请输入PORT"))    t_send = threading.Thread(target=send_msg, args=(udp_socket,dest_ip,dest_port))    t_recv = threading.Thread(target=recv_msg, args=(udp_socket,))    # 发送信息    t_send.start()

    # 接收信息    t_recv.start()

if __name__ == ‘__main__‘:    main()

原文地址:https://www.cnblogs.com/pcjbk/p/11441886.html

时间: 2024-10-11 17:54:08

多线程的UDP聊天器的相关文章

UDP聊天器 服务器版 支持离线消息 支持净网过滤

#服务器端 #========================================================== #导入模块import socketimport threadingimport re#设置全局变量flagflag = 0#设置离线消息列表msg_list = []#创建udp套接字udp_server_socket = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)#绑定ip端口udp_server_socke

socket网络编程之udp聊天器

1 from socket import * 2 3 def send_msg(udp_socket): 4 '''发送消息''' 5 # 获取要发送的内容 6 dest_ip = input("请输入对方IP:") 7 dest_port = int(input("请输入对方port:")) 8 send_data = input("请输入要发送的消息:") 9 udp_socket.sendto(send_data.encode('utf-8

案例:多任务版udp聊天器

说明 编写一个有2个线程的程序 线程1用来接收数据然后显示 线程2用来检测键盘数据然后通过udp发送数据 要求 实现上述要求 总结多任务程序的特点 参考代码: import socket import threading def send_msg(udp_socket): """获取键盘数据,并将其发送给对方""" while True: # 1. 从键盘输入数据 msg = input("\n请输入要发送的数据:") # 2

udp聊天器

import socket def send_msg(udp_socket): """获取键盘数据,并将其发送给对方""" # 1. 从键盘输入数据 msg = input("\n请输入要发送的数据:") # 2. 输入对方的ip地址 dest_ip = input("\n请输入对方的ip地址:") # 3. 输入对方的port dest_port = int(input("\n请输入对方的por

python使用udp实现聊天器

聊天器简易版 使用udp实现一个简单的聊天器程序,要求如下: 在一个电脑中编写1个程序,有2个功能 1.获取键盘数据,并将其发送给对方 2.接收数据并显示 并且功能数据进行选择以上的2个功能调用 例子程序如下: import socket def send_message(udp_socket): # 输入对方的ip/port dest_ip = input("请输入对方的ip:") dest_port = int(input("请输入对象的port:")) # 读

python 入门 socket 实现udp聊天室

什么是 Socket? Socket又称"套接字",应用程序通常通过"套接字"向网络发出请求或者应答网络请求,使主机间或者一台计算机上的进程间可以通讯. socket()函数 Python 中,我们用 socket()函数来创建套接字,语法格式如下: socket.socket([family[, type[, proto]]]) 参数 family: 套接字家族可以使AF_UNIX或者AF_INET type: 套接字类型可以根据是面向连接的还是非连接分为SOCK

python—多任务版udp聊天机器人

将多任务(多线程)引入到udp聊天机器人,可以实现同时发送消息和接收消息 1 import socket 2 import threading 3 4 5 def udp_send(udp_socket,ip,port): 6 while True: 7 try: 8 # 获取发送的信息 9 data = input('请输入要发送的信息:') 10 udp_socket.sendto(data.encode('gbk'), (ip,port)) 11 12 except Exception a

java UDP聊天与文件传输

package rgy.com.UDP3; import java.awt.Font; import java.awt.GridLayout; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; import java.awt.event.KeyAdapter; import java.awt.event.KeyEvent; import java.io.File; import java.io.Fil

UDP聊天室

pub.h   定义了一些消息的结构和宏变量 #ifndef _PUB_H_ #define _PUB_H_ #include <list> #include <algorithm> using namespace std; // C2S #define C2S_LOGIN            0x01 #define C2S_LOGOUT            0x02 #define C2S_ONLINE_USER        0x03 #define MSG_LEN