Python多进程通信:Pipe与Queue如何选择?
- 内容介绍
- 文章标签
- 相关推荐
本文共计213个文字,预计阅读时间需要1分钟。
参考:[Stack Overflow - Multiprocessing.Pipe vs. Queue](https://stackoverflow.com/questions/8463008/multiprocessing-pipe-vs-queue)
区别:- `Pipe()`:只能有两个端点。- `Queue()`:可以支持多个消费者和多个生产者。
参考:
stackoverflow.com/questions/8463008/multiprocessing-pipe-vs-queue
=========================================================
区别:
- A 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要综合考虑性能要求及功能需求。
本文共计213个文字,预计阅读时间需要1分钟。
参考:[Stack Overflow - Multiprocessing.Pipe vs. Queue](https://stackoverflow.com/questions/8463008/multiprocessing-pipe-vs-queue)
区别:- `Pipe()`:只能有两个端点。- `Queue()`:可以支持多个消费者和多个生产者。
参考:
stackoverflow.com/questions/8463008/multiprocessing-pipe-vs-queue
=========================================================
区别:
- A 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要综合考虑性能要求及功能需求。

