繁体   English   中英

关于Python语句的原子性和全局解释器锁定

[英]Regarding atomicity of Python statements and Global Interpreter Lock

我在某处读到索引列表,例如l [3]是原子操作。 是由于全局解释器锁定而实现的原子性。

是的,只要您在本机列表上进行索引,索引应该是原子的,而不是有人可以重定向__getitem__索引; 但是,这是一个实现细节 ,您不能依赖它。

不,这不仅是因为GIL,还因为仅允许在单个解释器指令之间进行线程之间的切换,而索引就是这样的单个指令,而仅在CPython中。

要点: 不要依赖高级脚本语言(例如python)中的原子性 如果需要障碍,请使用信号量或显式的原子数据类型。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM