Note that this library is in the very early stages of development! Anything and everything may change!
Zedmq is a native implementation of ØMQ in Rust focusing on:
This library is lazy and blocking, no work is done unless a call to a
recv
or send
is made. There is no "background" thread or task accepting
new connections or performing reconnections on the users behalf
consequently there is no shared state or synchronization being performed.
Frame<'_>
and FrameBuf
This library also exposes the underlying ZMQ concept of a frame.
Additionally a distinction is made with the Frame
and FrameBuf
types
for optimization purposes.
Conceptually a Frame<'_>
is equivelent to &'_ [u8]
or &'_ str
and
the FrameBuf
equivelent is Vec<u8>
or String
. This distinction is
made in an attempt to make "zero copy" or "zero heap" practice easier.
```rust use zedmq::prelude::*;
fn main() -> std::io::Result<()> { let mut socket = Pull::connect("127.0.0.1:5678")?;
while let Ok(message) = socket.recv() {
dbg!(message);
}
Ok(())
} ```
License: MIT