这个引用计数的不对
就是引入实例
是没有算了开关
IO密集型,确实多线程耗时更短
CPU核数可以理解为里面有几个工人,单核里面只有一个,多核有n个,对于n个工时量的项目,单核需要n小时完成,而多核有n个工人同时干,只需要一个小时就能完成;
但python中由于GIL的存在,同时只能有一个线程运行。就好多核里面的n个工人,但同时只能有1个人工作,其他只能划划水,多核的优势完全被浪费掉了。而且还多了几个工人去抢着工作耗费的无意义时间,也就是你所说的时间片的切换耗时,所以导致耗费时间比单线程要更多。
不知道呀
https://www.cnblogs.com/ArsenalfanInECNU/p/9968621.html
因为这"老师"有些地方讲错了
python用threading.Thread形式开出来的线程, 都活在同一个核上, 所以共用一个GIL
而用multiprocessing.Process这样开出来的进程, 是互相独立的(可以打印pid号发现), 每个进程使用各自的GIL, 进程间的GIL不相干.
可以可以可以
剑气流光