继承threading.Thread的用法
时间: 2024-10-19 16:01:08 浏览: 11
python继承threading.Thread实现有返回值的子类实例
在Python的`threading`模块中,如果你想要创建一个新的线程类并继承自`threading.Thread`,通常的做法如下:
首先,你需要定义一个新类,让它继承自`Thread`。在这个新类中,可以重写`__init__`方法来设置特定于该线程的初始化参数,并覆盖或重写`run`方法,这是每个线程执行实际任务的地方。
```python
import threading
class CustomThread(threading.Thread):
def __init__(self, name, task_function, *args, **kwargs):
super().__init__(name=name) # 初始化父类,传入线程名称
self.task_function = task_function # 存储要执行的任务函数
self.args = args # 存储函数需要的参数
self.kwargs = kwargs
def run(self):
self.task_function(*self.args, **self.kwargs)
```
然后,你可以创建`CustomThread`对象并启动它:
```python
def my_task(arg1, arg2):
# 这里编写你要在线程中运行的具体任务
print(f"Task {self.name} started with args ({arg1}, {arg2})")
custom_thread = CustomThread(name="MyThread", task_function=my_task, arg1=10, arg2=20)
custom_thread.start()
```
阅读全文