2

multiprocessing.Connectionpython对象线程安全吗?

如果是这样,两个线程可以同时在同一个连接上使用conn.recv()conn.send(),这对于全双工通信可能很有用。

4

1 回答 1

2

看起来它不是线程安全的。在 Python 3.2 之前,multiprocessing.Connection对象没有附加任何信号量,也没有任何使用它们的库代码。

有趣的是,在 Python 3.3中,实现已经移动了. 但同样,没有使用锁定原语。

该文档没有过多地提及multiprocessing模块的线程安全性。考虑到 Python 文档的质量,这有点出乎意料。

于 2012-04-26T00:01:26.683 回答