多线程的简单使用
多线程适合处理 I/O 密集型任务;计算/CPU 密集型任务需要使用多进程
多线程中使用全局变量,需要是线程安全的。可使用 Queue 标准库;另外list.append()
操作也是线程安全的
https://docs.python.org/zh-cn/3/library/threading.html
1. 代码示例
python
import threading
import time
def _get_info_thread(thread_id):
print(f'当前线程{thread_id}')
time.sleep(1)
threads = []
for _id in range(10):
t = threading.Thread(
target=_get_info_thread, # 线程调用的函数
args=(_id,) # args 是元组类型,当只有一个参数时,需要加个逗号
)
t.start() # 启动线程
threads.append(t)
for th in threads:
th.join() # 等待线程执行完成
运行结果可发现总体仅耗时1秒,而不是10秒