关于python线程执行问题

来源:6-5 全局解释器锁GIL

lemonlxn

2018-05-02

老师好,您在这个小节说:对于Python而言,无论CPU有多少核,多少个进程,在同一个时刻,只能运行一个线程。

但在前一小节中,第18行开启线程之后,马上会执行第20行主线程的代码,最后打印lemon线程名字结束运行。

在这段debug中,我并没有感觉到同一时刻,只能运行一个线程。


相反,我倒觉得,第18行启动线程后,稍晚一点执行第20行主线程代码,之后同一时刻,同时运行两个线程代码。

主线程先结束,线程sleep一小端时间后,打印lemon结束整个代码。


所以老师,我的疑问是,无论CPU有多少核心,开了多少进程,是 同一时刻,只能启动一个线程?

//img.mukewang.com/szimg/5ae96a800001587b23401346.jpg

写回答

3回答

7七月

2018-05-02

只能一个线程执行代码。课程里也明确说了,cpu执行速度很快,你自己是感觉不出来线程的切换的。

0
2
lemonlxn
代码贴出来好乱,我已在下面截图
2018-05-03
共2条回复

lemonlxn

提问者

2018-05-03

我还是截图好了,代码贴出来好乱//img.mukewang.com/szimg/5aead0f500019b6815641278.jpg

0
2
lemonlxn
回复
7七月
好的,谢谢老师。第六章已经看了6遍了,今天打算再看一遍,做一个总结。总结会贴在下面,老师您有空的话,麻烦看看我总结是否有误~谢谢老师
2018-05-04
共2条回复

lemonlxn

提问者

2018-05-02

好的,谢谢老师

0
0

Python Flask高级编程之从0到1开发《鱼书》精品项目

7月老师深入浅出剖析Flask核心机制,和你一起探讨Python高级编程

2735 学习 · 1267 问题

查看课程