vibe.d beta banner
get vibe.d

Asynchronous I/O that doesn’t get in your way, written in D

Class TaskPipe

Implements a unidirectional data pipe between two tasks.

class TaskPipe
  : ConnectionStream ;


this (grow_when_full) Constructs a new pipe ready for use.


bufferSize[get, set] ulongSize of the (fixed) FIFO buffer used to transfer data between tasks
connected[get] boolDetermines The current connection status.
dataAvailableForRead[get] boolQueries if there is data available for immediate, non-blocking read.
empty[get] boolReturns true iff the end of the input stream has been reached.
leastSize[get] ulongReturns the maximum number of bytes that are known to remain in this stream until the end is reached. After leastSize() bytes have been read, the stream will either have reached EOS and empty() returns true, or leastSize() returns again a number > 0.


close () Actively closes the connection and frees associated resources.
finalize () Flushes and finalizes the stream.
flush () Flushes the stream and makes sure that all data is being written to the output device.
peek () Returns a temporary reference to the data that is currently buffered.
read (dst) Fills the preallocated array 'bytes' with data from the stream.
waitForData (timeout) Blocks until data becomes available for read.
write (bytes) Writes an array of bytes to the stream.
write (stream, nbytes) Pipes an InputStream directly into this OutputStream.
write (bytes) Writes an array of chars to the stream.
writeDefault (stream, nbytes)

Sönke Ludwig


© 2013 RejectedSoftware e.K.


Subject to the terms of the MIT license, as written in the included LICENSE.txt file.