# 📬 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 one `Receiver` 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` and `Arc` to safely share data between threads. ## 📦 Installation To use `message-channel`, add it to your `Cargo.toml`: ```toml [dependencies] message-channel = "0.0.1" ``` ## 🚀 Usage Here's a simple example of how to use `message-channel`: ```rust 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](LICENSE) file for details.