From mboxrd@z Thu Jan 1 00:00:00 1970 Path: main.gmane.org!not-for-mail From: Kevin Ryde Newsgroups: gmane.lisp.guile.devel Subject: doco PIPE_BUF Date: Tue, 26 Aug 2003 07:59:48 +1000 Sender: guile-devel-bounces+guile-devel=m.gmane.org@gnu.org Message-ID: <877k51e6uj.fsf@zip.com.au> NNTP-Posting-Host: deer.gmane.org Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii X-Trace: sea.gmane.org 1061871079 25165 80.91.224.253 (26 Aug 2003 04:11:19 GMT) X-Complaints-To: usenet@sea.gmane.org NNTP-Posting-Date: Tue, 26 Aug 2003 04:11:19 +0000 (UTC) Original-X-From: guile-devel-bounces+guile-devel=m.gmane.org@gnu.org Tue Aug 26 06:11:18 2003 Return-path: Original-Received: from monty-python.gnu.org ([199.232.76.173]) by deer.gmane.org with esmtp (Exim 3.35 #1 (Debian)) id 19rVAr-0005PD-00 for ; Tue, 26 Aug 2003 06:11:17 +0200 Original-Received: from localhost ([127.0.0.1] helo=monty-python.gnu.org) by monty-python.gnu.org with esmtp (Exim 4.20) id 19rV9p-0003tx-0m for guile-devel@m.gmane.org; Tue, 26 Aug 2003 00:10:13 -0400 Original-Received: from list by monty-python.gnu.org with tmda-scanned (Exim 4.20) id 19rV91-0003gU-Re for guile-devel@gnu.org; Tue, 26 Aug 2003 00:09:23 -0400 Original-Received: from mail by monty-python.gnu.org with spam-scanned (Exim 4.20) id 19rV8U-0003Sl-Le for guile-devel@gnu.org; Tue, 26 Aug 2003 00:09:21 -0400 Original-Received: from [61.8.0.36] (helo=snoopy.pacific.net.au) by monty-python.gnu.org with esmtp (Exim 4.20) id 19rV6u-0002gq-VB for guile-devel@gnu.org; Tue, 26 Aug 2003 00:07:13 -0400 Original-Received: from sunny.pacific.net.au (sunny.pacific.net.au [203.2.228.40]) by snoopy.pacific.net.au (8.12.3/8.12.3/Debian-6.4) with ESMTP id h7PM0A0J020445 for ; Tue, 26 Aug 2003 08:00:10 +1000 Original-Received: from wisma.pacific.net.au (wisma.pacific.net.au [210.23.129.72]) by sunny.pacific.net.au with ESMTP id h7PM0Akv009456 for ; Tue, 26 Aug 2003 08:00:10 +1000 (EST) Original-Received: from localhost (ppp74.dyn228.pacific.net.au [203.143.228.74]) by wisma.pacific.net.au (8.12.9/8.12.9) with ESMTP id h7PM00os029340 for ; Tue, 26 Aug 2003 08:00:05 +1000 (EST) Original-Received: from gg by localhost with local (Exim 3.35 #1 (Debian)) id 19rPNN-0000kS-00; Tue, 26 Aug 2003 07:59:49 +1000 Original-To: guile-devel@gnu.org Mail-Copies-To: never User-Agent: Gnus/5.090019 (Oort Gnus v0.19) Emacs/21.3 (gnu/linux) X-BeenThere: guile-devel@gnu.org X-Mailman-Version: 2.1.2 Precedence: list List-Id: Developers list for Guile, the GNU extensibility library List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: guile-devel-bounces+guile-devel=m.gmane.org@gnu.org Xref: main.gmane.org gmane.lisp.guile.devel:2709 X-Report-Spam: http://spam.gmane.org/gmane.lisp.guile.devel:2709 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. _______________________________________________ Guile-devel mailing list Guile-devel@gnu.org http://mail.gnu.org/mailman/listinfo/guile-devel