delorie.com/archives/browse.cgi   search  
Mail Archives: cygwin-developers/2001/03/27/02:39:28

Mailing-List: contact cygwin-developers-help AT sourceware DOT cygnus DOT com; run by ezmlm
List-Subscribe: <mailto:cygwin-developers-subscribe AT sources DOT redhat DOT com>
List-Archive: <http://sources.redhat.com/ml/cygwin-developers/>
List-Post: <mailto:cygwin-developers AT sources DOT redhat DOT com>
List-Help: <mailto:cygwin-developers-help AT sources DOT redhat DOT com>, <http://sources.redhat.com/ml/#faqs>
Sender: cygwin-developers-owner AT sources DOT redhat DOT com
Delivered-To: mailing list cygwin-developers AT sources DOT redhat DOT com
Message-ID: <001f01c0b690$d8555230$0200a8c0@lifelesswks>
From: "Robert Collins" <robert DOT collins AT itdomain DOT com DOT au>
To: <cygwin-developers AT cygwin DOT com>
Subject: fifo's
Date: Tue, 27 Mar 2001 17:37:56 +1000
MIME-Version: 1.0
X-Priority: 3
X-MSMail-Priority: Normal
X-Mailer: Microsoft Outlook Express 5.50.4133.2400
X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400
X-OriginalArrivalTime: 27 Mar 2001 07:32:43.0794 (UTC) FILETIME=[1C9C8720:01C0B690]

well my test cases show some interesting behaviour...

1 writer, 2 readers - the readers get the written blocks in a round
robin style. (ie if the writer writes
"1\n"
"2\n"
"3\n"
the 1st reader will get
"1\n"
"3\n"
and the 2nd reader
"2\n"

2 writers, 1 reader - seems to be atomic writes (no mixed data), but if
the writes are interleaved, the reads get the interleaved data. So
writers have to buffer their output to atomic chunks.

2 writers, 2 readers - seems to be the round robin outputs, atomic
writes, interleaved data as appropriate (union of the first two tests).

As far as interoperability with non-cygwin apps goes... my comment is
"If they wouldn't understand native Named Pipes for redirecting stdout,
then this is no different." I will attempt structure this code so it can
be pulled out to a separate dll for linking with mingw applications, or
to be built into an IFS driver down the track. (So the native apps could
be redirected to //./...../namedpathalias/ when called from a cygwin
app.)

Rob


- Raw text -


  webmaster     delorie software   privacy  
  Copyright © 2019   by DJ Delorie     Updated Jul 2019