Skip to main content

Module channel

Module channel 

Source
Expand description

channels used for communication between main process and workers Bidirectional length-delimited unix-socket channel.

Implements the master ↔ worker / master ↔ CLI message channel: each payload is preceded by a native usize length prefix (NOT a NUL separator — that scheme belongs to the state-file save format in command/src/state.rs:1613-1630). Bounded by the per-channel max_buffer_size (channel.rs:71) checked before payload allocation.

Structs§

Channel
Channel meant for communication between Sōzu processes over a UNIX socket. It wraps a unix socket using the mio crate, and transmit prost messages by serializing them in a binary format, with a fix-sized delimiter. To function, channels must come in pairs, one for each agent. They can function in a blocking or non-blocking way.

Enums§

ChannelError

Functions§

delimiter_size
the payload is prefixed with a delimiter of sizeof(usize) bytes