永发信息网

为什么python明明是有GIL锁的单线程却可以在import thread后实现...

答案:2  悬赏:50  手机版
解决时间 2021-02-26 07:15
  • 提问者网友:美人性情
  • 2021-02-25 11:24
为什么python明明是有GIL锁的单线程却可以在import thread后实现...
最佳答案
  • 五星知识达人网友:玩世
  • 2021-02-25 12:31
GIL是一种机制。在java或其他语言里线程是各执行各的,比如:一个线程执行“a+=1”,另一个线程执行“a+=1”,这两个是同时执行,它的执行顺序是读取a并加一,两个线程是同时执行这个流程。而python的GIL的执行顺序是第一个线程读取a,第二个线程读取a,第一个线程a加一,第二个线程a加一,第一个线程把a+1赋值到a,第二个线程把a+1赋值到a。所以GIL是同一时间只执行一个线程,而java或其他是同一时间执行多个。GIL是把一句语言(如:a+=1)分成原子操作顺序执行。
全部回答
  • 1楼网友:平生事
  • 2021-02-25 13:36
没看懂什么意思?
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯