在线程Python中构造类

时间:2019-02-11 00:12:06

标签: python multithreading python-multithreading

我有一堂课

class Fee:
    def __init__(self):
        self.fie = foe()

    def foo(self):
        return bar

如何在线程中创建Fee的实例;将Fee的构造函数运行到线程中?

1 个答案:

答案 0 :(得分:0)

我不认为仅应使用线程来返回一个类,但是如果您想集成到线程中,则可以尝试以下操作:

import threading

class Fee:
    def __init__(self):
        self.fie = 42

    def print_fie(self):
        print(self.fie)


def build_thread():
    new_fee_instance = Fee()
    new_fee_instance.print_fie()


if __name__ == '__main__':
    my_thread = threading.Thread(target=build_thread)
    my_thread.start()
    my_thread.join()

结果:

42

以退出代码0结束的过程

我不确定这是否是在线程中构建类的最干净的方法,但是我认为我的逻辑通常是将线程附加到函数->该函数会构建类并使用它。我不确定要创建一个仅返回一个线程而不对其进行任何处理的线程的动机是什么,但是我想为此目的创建线程的开销会对程序的速度产生负面影响,因为创建线程,这是可以避免的。