互斥锁与线程锁。使用哪种?

2024-05-09 19:26:45 发布

您现在位置:Python中文网/ 问答频道 /正文

我的主要问题是线程锁对象是否创建原子锁?在模块文档中并没有说锁是原子的。在pythons mutex文档中,它确实说互斥锁是原子锁,但我似乎读到了一些事实上不是原子锁的地方,我想知道是否有人能给我一些关于这一问题的见解。我该用哪把锁。我目前正在使用Python2.4运行我的脚本


Tags: 模块对象文档脚本地方线程pythonsmutex
1条回答
网友
1楼 · 发布于 2024-05-09 19:26:45

如果锁不是原子的,任何性质的锁都是相当无用的——锁的全部目的是允许更高级的原子操作。

线程的所有同步对象(锁、rlock、信号量、有界信号量)都使用原子指令,互斥锁也是如此。

您应该使用threading,因为mutex实际上是不推荐使用的(并在Python 3中被删除)。

相关问题 更多 >