# spmc

[![Build Status](https://travis-ci.org/seanmonstar/spmc.svg?branch=master)](https://travis-ci.org/seanmonstar/spmc)
[![crates.io](http://meritbadge.herokuapp.com/spmc)](https://crates.io/crates/spmc)

Single-Producer, Multiple-Consumer channel for Rust.

[Documentation](https://docs.rs/spmc)

## License

Licensed under either of

* [Apache License, Version 2.0](LICENSE-APACHE)
* [MIT license](LICENSE-MIT)

at your option.

### Contribution

Unless you explicitly state otherwise, any contribution intentionally submitted for inclusion in the work by you, as defined in the Apache-2.0 license, shall be dual licensed as above, without any additional terms or conditions.
