码迷,mamicode.com
首页 > 编程语言 > 详细

python多线程

时间:2019-08-08 23:44:41      阅读:61      评论:0      收藏:0      [点我收藏+]

标签:支持   入口   事件   睡眠   用户   在线   最小   方式   获得   

1、进程为线程的入口,线程不可独立执行,必须依附在线程上,线程为cpu调度的最小单位

2、线程分为内核线程和用户线程,内核线程由操作系统创建和销毁,用户线程为在用户进程中实现的线程,不需要内核线程的支持

3、每个线程有自己的cpu寄存器,保存了上一次运行线程时候的寄存器上下文

4、线程共享一个进程的内存

5、线程的状态

新状态:线程对象创建,未start

可运行状态:在start开始的时候,首先进入可运行状态。在线程运行之后或者从阻塞、等待或睡眠状态回来后,也返回到可运行状态。

运行状态:线程调度从可运行线程池中选一个作为当前线程,这个时候的状态为运行状态。是线程进入运行状态的唯一方式。

等待/阻塞/睡眠状态:有事件发生后,可能返回到可运行状态

死亡状态:run()方法完成时就认为线程死去,线程对象可能还在,但是线程已经不是一个单独可执行的线程。线程死亡后不可复生,在死亡线程上调用start()方法会报错

 

线程同步方式:

threadLock = threading.Lock()

threadLock.acquire() 获得锁之后才往下执行

threadLock.release()释放对锁的占用

python多线程

标签:支持   入口   事件   睡眠   用户   在线   最小   方式   获得   

原文地址:https://www.cnblogs.com/EmptyRabbit/p/11324194.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有 京ICP备13008772号-2
迷上了代码!