首页 > 解决方案 > python中的多播正在冻结我的网络。如何在不冻结网络的情况下通过套接字发送数据?

问题描述

import socket
import json
from helper import sendDet

MCAST_GRP = '224.0.0.1'
MCAST_PORT = 5111
MULTICAST_TTL = 2

res = sendDet()
res = {'data': res}
res = json.dumps(res)
res = res.encode()
res = bytearray(res)


sock = socket.socket(socket.AF_INET, socket.SOCK_DGRAM, socket.IPPROTO_UDP)
sock.setsockopt(socket.IPPROTO_IP, socket.IP_MULTICAST_TTL, MULTICAST_TTL)

while True:
    sock.sendto(res, (MCAST_GRP, MCAST_PORT)) 

我已经使用此代码连续发送数据。但它以大约 20MBps 的速度上传并冻结我的网络,这需要重新启动我的路由器。如果我删除while True,那么它只发送一次。

他们在 python 中是否会连续多播数据而不冻结网络?

标签: pythonsockets

解决方案


推荐阅读