您好, 欢迎来到 !    登录 | 注册 | | 设为首页 | 收藏本站

Python-列表是线程安全的吗?

Python-列表是线程安全的吗?

列表本身是线程安全的。在cpython中,GIL防止对它们的并发访问,而其他实现则请小心地为它们的列表实现使用细粒度锁或同步数据类型。但是,虽然列表本身不会因尝试并发访问而损坏,但列表的数据不受保护。例如:

L[0] += 1

如果另一个线程做同样的事情,则不能保证实际上将L [0]增加1,因为+=这不是原子操作。(实际上,Python中很少有原子操作的操作,因为它们中的大多数操作都会导致调用任意Python代码。)你应该使用Queues,因为如果你仅使用不受保护的列表,则可能由于种族而获得或删除错误的项目条件。

python 2022/1/1 18:24:20 有184人围观

撰写回答


你尚未登录,登录后可以

和开发者交流问题的细节

关注并接收问题和回答的更新提醒

参与内容的编辑和改进,让解决方法与时俱进

请先登录

推荐问题


联系我
置顶