python如何开多线程
时间: 2023-10-13 08:00:07 浏览: 42
在Python中,可以使用`threading`模块来实现多线程。下面是一个简单的示例代码,展示了如何在Python中创建和启动多个线程:
```python
import threading
def worker(num):
print(f"Worker {num} started")
# 执行线程任务
print(f"Worker {num} finished")
# 创建线程对象
threads = []
for i in range(5):
t = threading.Thread(target=worker, args=(i,))
threads.append(t)
# 启动线程
for t in threads:
t.start()
# 等待所有线程执行完毕
for t in threads:
t.join()
print("All threads finished")
```
在上述代码中,首先定义了一个`worker`函数作为线程的执行任务。然后通过循环创建了5个线程对象,并将它们添加到一个列表中。每个线程对象通过`target`参数指定要执行的函数,`args`参数用于传递给函数的参数。
接下来,通过循环遍历线程列表,并使用`start`方法启动每个线程。然后使用`join`方法等待所有线程执行完毕。
需要注意的是,Python中的多线程是基于线程切换的,并不适用于对CPU密集型任务的加速。这是因为在Python中,由于全局解释器锁(GIL)的存在,同一时刻只有一个线程能够执行Python字节码。因此,在处理CPU密集型任务时,应该考虑使用`multiprocessing`模块来实现多进程并行计算。
另外,需要注意在多线程编程中,