实例不会死

时间:2014-07-22 15:49:27

标签: python

我有3台设备。设备A与设备C通信。设备B嗅探连接。我的代码工作正常但我不明白为什么decoder对象在线程退出后(即controlTrue时)继续嗅探连接。

Decoder类对设备A和C之间的数据包进行解码,并且没有任何循环机制(当它作为单个脚本运行时,它运行一次然后退出)。

以下是问题所在的代码的简化版本(在设备B上运行):

class Thread_Class(Flag):
    def run(self):
        while(control == False):
            self.parent.object.loop(0, self.handle_packets)

    def handle_packets(self, ...):
        # packet handling code using pcapy library
        packet = ...

        self.parent.decoder = Decoder(self)
        self.parent.decoder.decode(packet)

1 个答案:

答案 0 :(得分:0)

好的,我解决了......我在最后两行放置if control == False