[Top][All Lists]
[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.
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- doco PIPE_BUF,
Kevin Ryde <=