python做一个进度条 python多线程为什么没有并行?

python多线程为什么没有并行?1. 什么是吉尔?  Gil的全名是global interpreter lock(global interpreter lock),源于Python设计之初的考虑和

python多线程为什么没有并行?

1. 什么是吉尔?

  Gil的全名是global interpreter lock(global interpreter lock),源于Python设计之初的考虑和对数据安全的决策。

2. 每个CPU只能同时执行一个线程

  事实上,单核CPU下的多线程只是并发,而不是并行。并发性和并行性是同时处理多个请求的概念。但是并发和并行之间有区别。并行意味着两个或多个事件同时发生,而并发意味着两个或多个事件在同一时间间隔发生。

百度搜索圈t社区(www.aiquanti.com)免费视频教程

多线程不能“快速”打印数字。

多线程加速的原因是有条件的。主要解决两个问题。一是充分利用多个cpu(或多核cpu)实现并行计算。另一种是异步调用来实现延迟隐藏。在打印数字的要求方面,使用多线程必须锁定显示结果的代码,否则输出会比较混乱。因此,多线程不仅不可能更快,而且更慢,不用说代码更麻烦。