guile-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

doco PIPE_BUF


From: Kevin Ryde
Subject: doco PIPE_BUF
Date: Tue, 26 Aug 2003 07:59:48 +1000
User-agent: Gnus/5.090019 (Oort Gnus v0.19) Emacs/21.3 (gnu/linux)

A bit of a tweak to the layout,

        * posix.texi (Ports and File Descriptors): Use @defvar for PIPE_BUF,
        cross reference glibc manual on atomicity.


 - Scheme Procedure: pipe
 - C Function: scm_pipe ()
     Return a newly created pipe: a pair of ports which are linked
     together on the local machine.  The CAR is the input port and the
     CDR is the output port.  Data written (and flushed) to the output
     port can be read from the input port.  Pipes are commonly used for
     communication with a newly forked child process.  The need to
     flush the output port can be avoided by making it unbuffered using
     `setvbuf'.

      - Variable: PIPE_BUF
          A write of up to `PIPE_BUF' bytes to a pipe is atomic, meaning
          when done it goes into the pipe instantaneously and as a
          contiguous block (*note Atomicity of Pipe I/O: (libc)Pipe
          Atomicity.).

     Note that the output port is likely to block if too much data has
     been written but not yet read from the input port.  Typically the
     capacity is `PIPE_BUF' bytes.




reply via email to

[Prev in Thread] Current Thread [Next in Thread]