参数说明:
- function - 线程函数。
- args - 传递给线程函数的参数,他必须是个 tuple 类型。
- kwargs - 可选参数。
python3 中它已经被 OUT 了。
Threading 模块创建线程
使用 Threading 模块创建线程,直接从 threading.Thread 继承,然后重写 init 方法和 run 方法。
threading模块除了Thread类之外,还包括许多好用的同步机制:
对象 | 描述 |
---|---|
Thread | 表示一个执行线程的对象 |
Lock | 锁对象 |
RLock | 可重入锁对象,使单一线程可以(再次)获得已持有的锁(递归锁) |
Condition | 条件变量对象,使得一个线程等待另外一个线程满足特定的条件,比如改变状态或者某个数据值 |
Event | 条件变量的通用版本,任意数量的线程等待某个事件的发生,在该事件发生后所有的线程都将被激活 |
Semaphore | 为线程间的有限资源提供一个计数器,如果没有可用资源时会被阻塞 |
BoundedSemaphore | 于Semaphore相似,不过它不允许超过初始值 |
Timer | 于Thread类似,不过它要在运行前等待一定时间 |
Barrier | 创建一个障碍,必须达到指定数量的线程后才可以继续 |