Crate palombe[−][src]
Expand description
🕊️ Palombe
Palombe lets you send and receive key/value messages synchronously through different processes using named pipes.
Quick example
extern create palombe;
fn main() {
std::thread::spawn(|| send("foo", "bar"));
assert_eq!(receive("foo"), "bar");
}
Acknowledgments
:warning: This tool is not suited for building software, it is intended to be used only in rapid prototyping and first product development steps!
C-bindings that expose Palombe have no UTF8 support (because it uses
CString
that are FFI-Safe), so base64
could be a good encoding for
sharing complex datatypes …
If you looking for a better / faster / safer way to share typed (yes you want that) data across different processes, take a look at GoogleProtocal Buffer or even better at Cap’n Proto (which is infinitely faster).
Supported environments
The tool is embed into modules targeting several environments:
- ECMAScript: npm | Yarn (Sources)
- Python: PyPI (Sources)
- Ruby: RubyGem.org (Sources)
- Rust: Crates.io (Sources)
Contributing
Please read CONTRIBUTING.md for details on our code of conduct, and the process for submitting a pull requests to us.
Authors
See also the list of contributors who participated in this project.
License
This project is licensed under the 3rd version of the GPL License - see the LICENSE
Functions
Same as receive
function, but fulfilled for C compatibility
Same as send
function, but fulfilled for C compatibility
Receive the value
associated with a key
to another thread/program launched by the same user
Send a value
associated with a key
to another thread/program launched by the same user