Crate ipmpsc[][src]

Expand description

Inter-Process Multiple Producer, Single Consumer Channels for Rust

This library provides a type-safe, high-performance inter-process channel implementation based on a shared memory ring buffer. It uses bincode for (de)serialization, including zero-copy deserialization, making it ideal for messages with large &str or &[u8] fields. And it has a name that rolls right off the tongue.

Structs

Receiver

Represents the receiving end of an inter-process channel, capable of receiving any message type implementing serde::Deserialize.

Sender

Represents the sending end of an inter-process channel.

SharedRingBuffer

Represents a file-backed shared memory ring buffer, suitable for constructing a Receiver or Sender.

ZeroCopyContext

Borrows a Receiver for the purpose of doing zero-copy deserialization of messages containing references.

Enums

Error

ipmpsc-specific error type

Constants

GIT_COMMIT_SHA_SHORT

Commit hash of code from which this crate was built, if available (e.g. for logging at runtime)

VERSION

Crate version (e.g. for logging at runtime)

Type Definitions

Result

ipmpsc-specific Result type alias