这句话是片面的:
GIL锁限制了一个进程内的不同线程在同一个时刻只能占用一个CPU,由此可见,用多线程处理计算密集型的任务,python的多个线程需要互相等待获取CPU资源,此时的多个线程并不能并行,确实没有发挥我们预想中多线程的能力。
但是,如果执行的是IO密集型的任务,多个线程之间不存在太多的CPU资源的争夺,更多的是各个线程在进行IO传输、等待,此时多线程的能力仍然能够发挥出来。
所以不能简单的说Python的多线程是鸡肋,只是它的设计局限了它的适用场景罢了。
因为python的全局解释器锁的机制,
导致python的多线程并不是真正的多线程,
效率上不仅不会比单线程快,反而可能更慢,
所以说是鸡肋,要求速度好话,可以用多进程来实现
百度搜索圈T社区(www.aiquanti.com) 免费视频教程