我使用twisted和python通过网络发送一些大文本文件,我想使用UDP和多播,最好的解决方案是什么,我需要示例代码因为我已经很困惑,当我尝试要做到这一点我从python中得到错误24,它说太多打开的文件,你能帮我解决这个问题吗?
这是我的代码的一部分:
if (options.upt != None):
print "UPGRADE is initiating"
sourceFile = open(options.upt, "r")
reactor.listenMulticast(1888, UpgradeReciever("Control Listener"), listenMultiple=True)
#with open(options.upt) as sourceFile:
for line in sourceFile:
upgradeSenderObj = UpgradeSender(line, "224.0.0.8", 1888)
reactor.listenMulticast(1888, upgradeSenderObj, listenMultiple=True)
reactor.run()
我还尝试读取整个文件并放入列表,然后通过扭曲调用列表的每个元素(实际上是我的文件的行),但仍然遇到类似的问题,这是我的更新代码:< / p>
if (options.upt != None):
print "UPGRADE is initiating"
sourceFile = open(options.upt, "r")
reactor.listenMulticast(1888, UpgradeReciever("Control Listener"), listenMultiple=True)
dataContainer = list(sourceFile)
print dataContainer
for i in range(len(dataContainer)):
upgradeSenderObj = UpgradeSender(dataContainer[i], "224.0.0.8", 1888)
reactor.listenMulticast(1888, upgradeSenderObj, listenMultiple=True)
reactor.run()