python中多进程下通信使用管道Pipe与队列 Queue 的区别: Multiprocessing - Pipe vs Queue

网友投稿 405 2022-09-03


python中多进程下通信使用管道Pipe与队列 Queue 的区别: Multiprocessing - Pipe vs Queue

参考:

​​​​Pipe()​​ can only have two endpoints.A ​​Queue()​​ can have multiple producers and consumers.

When to use them

If you need more than two points to communicate, use a ​​Queue()​​.

If you need absolute performance, a ​​Pipe()​​​ is much faster because ​​Queue()​​​ is built on top of ​​Pipe()​​.

-----------

结论:

In summary ​​Pipe()​​​ is about three times faster than a ​​Queue()​​.

Queue 的底层是使用Pipe来实现的,或者说Queue是对Pipe的进一步包装,所以性能上有所下降,按照上面的参考资料显示速度降为了Pipe的3分之一,但是Queue支持的功能更加广泛,所以使用Pipe还是Queue要综合考虑性能要求及功能需求。


版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:如何在python同一应用下的多模块中共享变量(python多模块之间调用)
下一篇:(续) python 中 ctypes 的使用尝试(续贷声明)
相关文章

 发表评论

暂时没有评论,来抢沙发吧~