Python 之多线程应用
2024-08-30 22:33:21
import socket
from threading import Thread def recv_data():
while True:
recv_info = udp_socket.recvfrom(1024)
print(">> %s:%s" % (recv_info[1], recv_info[0].decode("gbk")))
pass def send_data():
while True:
send_info = input("<<")
udp_socket.sendto(send_info.encode("gbk"), (ip, port))
pass def main():
global udp_socket
global ip
global port
ip = input("对方的ip:")
port = int(input("对方的port:"))
udp_socket = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)
udp_socket.bind(("", 8080))
tr = Thread(target=recv_data)
ts = Thread(target=send_data) tr.start()
ts.start() tr.join()
ts.join() if __name__ == "__main__":
udp_socket = None
ip = ""
port = 0
main()
最新文章
- opendaylight的Beryllium安装
- pdb调试技巧
- C# 数据库查询总结
- Java核心知识点学习----多线程并发之线程间的通信,notify,wait
- SQLLite 可以通过SQL语言来访问的文件型SQL数据库
- 纯css3 transforms 3D文字翻开翻转3D开放式效果
- 标签的innerHTML属性和html()
- 2D简单图形相关算法罗列
- 逻辑很重要:一句sql语句的事,自己却想了半天,绕了个大弯子
- Eclipse中如何安装和使用GrepCode插件
- HDN2048(交错复发)
- Script:SQL调优健康检查脚本
- 使用JDT.AST解析java源码
- Shiro中的授权问题(二)
- HTTP之状态码
- 1.2.1 Excel如何从身份证号中提取日期
- Visual Studio2017 Remote Debugger
- MT【239】离心率最大
- c++中的构造(包括移动),赋值(包括移动),析构详解
- HDU 2089:不要62