1、线程(thread)、全局解释锁(GIL)、全局解释锁
2、thread、threading、Queue、mutex、SocketServer模块
thread、threading 模块允许程序员创建管理线程、但是真实应用中不建议使用thread、尽量使用threading替换thread(理由:a、threading 模块更高级,对线程支持更完善。b、thread 模块同步原语少,模块里的属性可能会和threading出现冲突 c、thread 不支持守护进程)
queue 模块允许用户创建一个可以用于多个线程之间共享数据的队列结构。
mutex 互斥对象
SocketServer 具有线程控制的TCP和UDP管理器
3、threading模块
thread:一个线程的执行对象
Lock:锁原语对象
RLock:可重入锁对象(递归锁)
Condition:条件变量对象能让一个线程停下来,等待其他线程满足了某个条件
Event:通用的条件变量
Semaphore:为等待锁的线程提供一个类似‘等候室’的结构
BounderdSemaphore:与semaphore类似,只是它不允许超过初始值。
Timer:定时器
4、join()函数
允许主线程等待线程结束