进程间的通讯: 用队列
进程有独立的内存空间
线程:
在一个进程的内部同时进行多件事,进程内的多任务就是子线程
是一种轻型进程,共享内存空间, 多个线程可能同时修改同一个变量
最小的执行单元, 进程至少有一个线程, 由操作系统决定什么时候执行
thread 模块 是一个低级
threading 高级模块
线程锁:
lock = threading.RLock()
lock.acquire()
lock.release()
包含锁实际上是单线程执行的,一般要try 一下, 一定要释放锁。
由于存在多个锁,不同线程持有不同的锁,并试图获取其他的锁,可能造成死锁,造成多个线程挂起,只能靠操作系统强制终止,
local 类:
创建一个全局的local对象,每个线程有独立的存储空间,每个线程都可以对local 对象进行读写,但是互不影响