Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/mahkoh/comm
Communication primitives
https://github.com/mahkoh/comm
Last synced: 22 days ago
JSON representation
Communication primitives
- Host: GitHub
- URL: https://github.com/mahkoh/comm
- Owner: mahkoh
- License: mit
- Created: 2015-02-10T23:43:35.000Z (almost 10 years ago)
- Default Branch: master
- Last Pushed: 2017-10-15T13:43:55.000Z (about 7 years ago)
- Last Synced: 2024-10-04T11:53:04.485Z (about 1 month ago)
- Language: Rust
- Homepage:
- Size: 143 KB
- Stars: 67
- Watchers: 13
- Forks: 10
- Open Issues: 8
-
Metadata Files:
- Readme: README.md
- License: COPYING
Awesome Lists containing this project
README
comm
====Primitives for inter-thread communication. See the documentation for a list of
features provided by this crate.[Documentation](http://mahkoh.github.io/comm/doc/comm/)
### Comparison with the `std::sync` implementation
_ | `std::sync` | `comm`
----| :----: | :----:
Restricted by stability guarantees | ✔1 | ✘
Users can use their own channels with `Select` | ✘ | ✔
`Select` has a safe interface | ✘ | ✔
`Select` can poll all channels in a vector without borrowing the vector | ✘ | ✔
`Select` can be used concurrently from multiple threads | ✘ | ✔
`Select` will be available in 1.0 | ✘ | ✔
Contains hot, experimental channels | ✘ | ✔
Extensively tested and optimized | ✔ | ✘
Web-Scale | ✘ | ✔21[Stability as a Deliverable](http://blog.rust-lang.org/2014/10/30/Stability.html)
2Uses the epoll design.In general: Channels in Rust don't need and don't have special compiler
support. Therefore, channels in the official distribution have all the
restrictions that come with the stdlib without getting any benefits (unlike Go
channels which are tightly integrated with the language.)### Usage
To use `comm`, first add this to your `Cargo.toml`:
```toml
[dependencies.comm]
git = "https://github.com/mahkoh/comm"
````comm` is currently not on [Crates.io](http://crates.io).
Then add this to your crate root:
```rust
extern crate comm;
```### Bugs
There are some tests but, given the nature of multi-threaded code, some bugs
might only show up in production.### License
MIT