在python中继承线程类
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了在python中继承线程类相关的知识,希望对你有一定的参考价值。
我有一些关于继承线程类的问题。
class MyThread(threading.Thread):
def __init__(self, num):
threading.Thread.__init__(self)
self.num = num
def run(self):
print("Thread", self.num)
time.sleep(1)
为什么我不能只覆盖run方法? threading的Python文档提到“Thread类表示在单独的控制线程中运行的活动。有两种方法可以指定活动:通过将可调用对象传递给构造函数,或者通过重写run()方法在一个子类中。“
为什么上面的示例代码也会覆盖构造函数呢?
答案
重写构造函数以将num
参数从创建MyThread
实例的位置传递给run
方法。
请注意,您不直接调用run
方法,因此除非将它们存储在构造函数中,否则不能将任何参数传递给它。
如果您不需要传递参数,则只能覆盖run
方法。
以上是关于在python中继承线程类的主要内容,如果未能解决你的问题,请参考以下文章