我正在尝试实现一个排序的事件处理程序。我尝试使用Popen使用外部进程收集示例网络捕获,并编写一个XML文件。我解析XML文件来收集我需要的信息。但是我不想终止这个过程,直到数据包的数量达到一定限度。
def getPacketCount(xmlfile, count, pid):
while 1:
try:
parser = minidom.parse(xmlfile)
wlan = parser.getElementsByTagName('wireless-network')[0]
pkt = wlan.getElementsByTagName('packets')[1]
packetCount = pkt.getElementsByTagName('total').childNodes[0].data
if packetCount>count:
#Call event handler to kill process with given pid.
except AttributeError, TypeError:
print "AttributeError: Accessing file again"`
这种方法有很多性能(因为它经常检查文件)?
如何让这个函数在后台运行(如守护进程?)
使用Multiprocessing模块有意义吗?
在函数中打包Popen并调用Multiprocessing是有效的?
Note: I am implementing this with Django to handle database operations.