1 unstable release
0.0.1 | Nov 13, 2024 |
---|
#199 in #messaging
153 downloads per month
Used in 15 crates
(5 directly)
7KB
71 lines
📬 message-channel
This Rust library provides a simple, thread-safe channel implementation for message passing between
a single Sender
and a single Receiver
. The channel is non-blocking on the receiving end, making
it ideal for cases where you want to check for messages without waiting.
✨ Features
- Single-Producer, Single-Consumer (SPSC): Only one
Sender
and oneReceiver
can interact with a channel. - Non-blocking Receiver: The
try_recv
method returns immediately, either with a message (Some
) or indicating that the queue is empty (None
). - Thread-Safe: Uses
Mutex
andArc
to safely share data between threads.
📦 Installation
To use message-channel
, add it to your Cargo.toml
:
[dependencies]
message-channel = "0.0.1"
🚀 Usage
Here's a simple example of how to use message-channel
:
use message_channel::Channel;
fn main() {
let (sender, receiver) = Channel::create();
// Send a message
sender.send(42).unwrap();
// Receive a message
let message = receiver.recv().unwrap();
assert_eq!(message, 42);
}
License
This project is licensed under the MIT License - see the LICENSE file for details.