worker开启多线程
时间: 2023-10-18 16:16:02 浏览: 42
当需要同时执行多个任务时,使用多线程可以提高程序的执行效率。在Python中,可以使用`threading`模块来创建和管理线程。
下面是一个简单的例子,展示如何使用`threading`模块创建多个线程:
```python
import threading
def worker(num):
"""线程要执行的任务"""
print(f"Worker {num} started")
# 执行任务
print(f"Worker {num} finished")
if __name__ == '__main__':
for i in range(5):
t = threading.Thread(target=worker, args=(i,))
t.start()
```
在上面的例子中,定义了`worker`函数作为线程要执行的任务。在主程序中,使用`threading.Thread`类创建多个线程,并将`worker`函数作为参数传入。`args`参数用于传递`worker`函数的参数。最后,调用`start`方法启动线程。
需要注意的是,如果需要让主程序等待所有线程执行完成后再结束,可以使用`join`方法。例如:
```python
if __name__ == '__main__':
threads = []
for i in range(5):
t = threading.Thread(target=worker, args=(i,))
threads.append(t)
t.start()
for t in threads:
t.join()
print("All workers finished")
```
在上面的例子中,使用一个列表来保存所有的线程对象,然后在启动所有线程后,使用`join`方法让主程序等待所有线程执行完成后再输出一条消息。