Python在两个类中的两个线程之间共享实例

时间:2013-08-01 20:37:26

标签: python multithreading data-sharing

我有一些代码需要在一个单独的线程中,这段代码完全是另一个类。我正在使用multiprocess.Queue队列来共享数据。基本上我希望父基类(也是程序驱动程序)创建一个其他类的实例,并将该实例放入队列并将队列发送到新的线程类。当线程类运行并最终得到一个值时,我希望它直接从传递的队列中的实例调用一个函数。

相反,线程终止并调用我已设置的finally块。我如何在python中执行此操作?

from multiprocessing import queue
import thread
class a():
    def main(self):
        self.classB = b()
        self.classC = C()
        self.queue = Queue()
        self.queue.put_nowait(self.classC)
        thread.start_new_thread(self.classB.run, (self.queue))
        #do stuff


class b():
    def run(self, q):
        #do stuff in try clause
        self.listen(q)

    def listen(self, q):
        c = q.get()
        c.someClassCMethod

编辑: 好的,我现在正在使用Queue.Queue()。我找不到提到的线程队列....我仍然无法将classC的实例发送到classB并使用它。

0 个答案:

没有答案
相关问题