Python的全局解释锁 注定 多线程 实际上 单线程 。高并发 模拟 并行。效率高低 看具体应用场景。
Thread 是threading模块中最重要的类之一,可以使用它来创建线程。
Thread模块是比较底层的模块,Threading模块是对Thread做了一些包装的,可以更加方便的被使用。
另外在工作时,有时需要让多条命令并发的执行, 而不是顺序执行.
有关线程的详细介绍,请参考官方文档 https://docs.python.org/2/library/threading.html
进程与线程:
进程 :程序加载运行的一次抽象;进程是 操作系统分配资源的单位
线程:线程 是 进程 执行 事件的 实体。分配时间片资源。
举例 开一个 qq 是一个 进程 。qq 语音 是一个 线程 视频 是 一个线程 ,发送 文字消息 是一个 线程。
一个 进程 至少一个 线程。本质上就是一种轻量级的进程。
start()开始执行流程就绪状态;
run()
join()
is_alive()状态
name 线程的名字
ident 线程的 id
daemon 是否 是 守护线程;
死锁?
多个执行流程,多个资源,并且执行流程需要获取这多个资源的情况下。有可能会出现某些执行流程各获取一部分资源
从而导致 多个执行流程进入 等待状态。
假如 你 和他 同时 有一根筷子 并同时使用,需要两根筷子和在一起, 才能 吃饭 那就等。这种情况就是 死锁