Oberon ||
Library ||
Module Index ||
Search Engine ||
Definition ||
Module
Ulm's Oberon Library:
PipeWriters
NAME
PipeWriters - non-blocking write to a pipeline
SYNOPSIS
PROCEDURE Spawn(VAR s: Streams.Stream; pipe: Streams.Stream);
DESCRIPTION
PipeWriters
provides a Streams implementation that accepts any amount
of write operations without blocking and buffers the output until
the pipe is ready to accept it. This allows to avoid deadlocks in
cases where a consumer would be suspended because its input is not
consumed.
This module preserves the output packages as long as their size
does not exceed the internal buffer size. StreamConditions
is supported.
Spawn
creates a task that accepts without blocking all the output written
to s and buffers it until pipe is ready to accept it.
This task will run until s is closed.
DIAGNOSTICS
Error events are forwarded from pipe to s.
SEE ALSO
- PipeReaders
-
a similar module for the input side
- UnixPipes
-
create pipelines to other processes
Edited by: borchert, last change: 2006/08/10, revision: 1.1, converted to HTML: 2006/08/10
Oberon ||
Library ||
Module Index ||
Search Engine ||
Definition ||
Module