Difference between queues and pipes in multiprocessing

Ethan Furman ethan at stoneleaf.us
Thu Sep 9 15:23:17 EDT 2010


James Mills wrote:
> On Wed, Aug 4, 2010 at 7:20 PM, Navkirat Singh <navkirats at gmail.com> wrote:
>> I was wondering what are the differences between queues and pipes implemented using multiprocessing python module. Am I correct if I say, in pipes, if another process writes to one receiving end concurrently, then an error will be raised and in queues the later processes data will just queued up?
> 
> basically a Queue is a syncronization primitive used to
> share and pass data to and from parent/child processes.
> 
> A pipe is as the name suggests, a socket pair connected
> end-to-end allowing for full-duplex communications.
> 

Isn't a pipe's communications one-way, requiring two of them to achieve 
full-duplex?

~Ethan~



More information about the Python-list mailing list