<?xml version="1.0" encoding="windows-1252"?>
<node id="351" title="perlfunc:pipe" created="1999-08-24 18:43:34" updated="2005-08-15 10:38:07">
<type id="119">
perlfunc</type>
<author id="114">
gods</author>
<data>
<field name="doctext">
</field>
<field name="name">

&lt;P&gt;
pipe - open a pair of connected filehandles

&lt;P&gt;
&lt;HR&gt;
</field>
<field name="synopsis">

&lt;P&gt;
pipe 
&lt;FONT SIZE=-1&gt;READHANDLE,WRITEHANDLE&lt;/FONT&gt;

&lt;P&gt;
&lt;HR&gt;
</field>
<field name="description">

&lt;P&gt;
Opens a pair of connected pipes like the corresponding system call. Note
that if you set up a loop of piped processes, deadlock can occur unless you
are very careful. In addition, note that Perl's pipes use stdio buffering,
so you may need to set &lt;CODE&gt;$|&lt;/CODE&gt; to flush your 
&lt;FONT SIZE=-1&gt;WRITEHANDLE&lt;/FONT&gt; after each command, depending on the
application.

&lt;P&gt;
See [perlfunc:../../lib/IPC/Open2|Open2], [perlfunc:../../lib/IPC/Open3|Open3], and [%linkNodeTitle "perlman:perlipc|Bidirectional Communication", $NODE, "Bidirectional Communication",{anchor=&gt;"Bidirectional_Communication"};%]
for examples of such things.

&lt;HR&gt;
</field>
</data>
</node>
