线程
线程python的thread模块是比较底层的模块,python的threading模块是对thread做了一些包装的,可以更加方便的被使用
使用threading模块
import threading
threading.Thread()
target | 线程要执行的目标函数 |
name | 线程名称 |
args | 传参数(元祖) |
kwargs | 传参数(字典) |
单线程执行
运行结果
多线程执行
运行结果
start()方法 | 开启线程 |
join()方法 | 线程阻塞 |
daemon = False | 后台线程,主线程结束不影响子线程运行 |
daemon = True | 前台线程,主线程结束子线程随之结束 |
线程执行是无顺序的
线程资源是共享的 :
保护资源,threading.Lock()添加了线程锁后,保证同一时刻只能一员工线程在使用或者修改资源 注意:避免死锁状况发生
多线程:任务队列 爬取线程 数据队列 解析线程
线程池:创建一个线程池