Python 线程安全规范 | Google 官方并发指南
2025-07-28 10:25 更新
线程
Tip
不要依赖内置类型的原子性。
虽然 Python 的内置类型表面上有原子性,但是在特定情形下可能打破原子性(例如用Python实现 __hash__
或 __eq__
的情况下)。因此它们的原子性不可靠。你也不能臆测赋值是原子性的(因为赋值的原子性依赖于字典的原子性)。
选择线程间的数据传递方式时,应优先考虑 queue
模块的 Queue
数据类型。如果不适用,则使用 threading
模块及其提供的锁原语(locking primitives)。如果可行,应该用条件变量和 threading.Condition
替代低级的锁。
以上内容是否对您有帮助:
更多建议: