在Python中使用PyGTK处理多线程函数的正确方法是什么?

时间:2014-07-04 10:52:43

标签: python multithreading class pygtk python-multithreading

当一个函数需要几秒钟来完成它的工作时,你需要使用线程,以便使用PyGTK创建的应用程序不会冻结。

但是,当许多函数应该使用线程时,我不知道编写代码的最佳方法是什么。

我发现this answer显示了如何继续。

假设我有3个不同的功能,这意味着我必须这样做:

class ThreadFunction1(threading.Thread):
    def __init__(self):
        threading.Thread.__init__(self)
        self.start()

    def run(self):
       # do something1

class ThreadFunction2(threading.Thread):
    def __init__(self):
        threading.Thread.__init__(self)
        self.start()

    def run(self):
       # do something2

class ThreadFunction3(threading.Thread):
    def __init__(self):
        threading.Thread.__init__(self)
        self.start()

    def run(self):
       # do something3

然后我可以单独调用ThreadFunction1()ThreadFunction2()ThreadFunction3()

我不认为这是最优雅的方式,这会带来很多重复。我该怎么办?

0 个答案:

没有答案