eve.aio.posix.pipe
Async pipe primitives for POSIX platforms.
This module provides the POSIX implementation of anonymous pipe primitives using standard POSIX API. It works on Linux, BSD, and macOS.
var EIO
class PipeEndState
Types 8
structPipeConfig
Pipe buffer configuration.
Fields
size_t bufferSizeBuffer size for read operations.size_t highWaterMarkMaximum queued bytes before `write` starts reporting pressure.size_t lowWaterMarkQueue threshold below which `onWritable` may fire again.Methods
structPipe
Async pipe endpoint wrapper.
Wraps a non-blocking pipe file descriptor and integrates with the Layer 1 event loop for async read/write operations with backpressure support.
A pipe has two ends: a read end and a write end. Use adoptRead to set up the read end, or adoptWrite to set up the write end.
Fields
PipeEndState _stateMethods
void onWritable(WritableCallback callback) @safeRegister callback when write buffer drains (write end only).PipeEndState mutableState() @trustedstructPipePair
Fields
DataCallback onDataWritableCallback onWritableCloseCallback onCloseErrorCallback onErrorEventLoop * _loopHandle _handleToken _tokenPipeConfig _configbool _isReadEndbool _readingPausedbool _watchingWritebool _awaitingWritablebool _closeDeliveredubyte[] _sendQueuePipeState _stateMethods
SendResult write(scope const(ubyte)[] data) @trustedConstructors
this(PipeConfig config)Functions 6
Variables 1
private enumvar
EIO = 5EIO error code for generic I/O errors.