1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42
|
# synchronoise
fun synchronization primitives for your fun synchronization needs [](https://travis-ci.org/QuietMisdreavus/synchronoise) [](https://ci.appveyor.com/project/QuietMisdreavus/synchronoise/branch/master)
[Documentation](https://docs.rs/synchronoise) | ([Manually-generated docs for master][doc-dev])
[doc-dev]: https://tonberry.quietmisdreavus.net/synchronoise-dev/synchronoise/
This is a collection of synchronization facilities that aren't part of the standard library that I
wanted to make sure were available for the Rust community.
This crate contains the following synchronization primitives:
* `CountdownEvent`, a port of `System.Threading.CountdownEvent` from .NET (also called
`CountDownLatch` in Java).
* `SignalEvent`, a port of `System.Threading.EventWaitHandle` (and its derived classes,
`AutoResetEvent` and `ManualResetEvent`) from .NET.
* `WriterReaderPhaser`, a port of `WriterReaderPhaser` from HdrHistogram.
To add this crate to your project, add the following line to your Cargo.toml:
```toml
[dependencies]
synchronoise = "0.4.0"
```
...and the following to your crate root:
```rust
extern crate synchronoise;
```
# License
synchronoise is licensed under either the MIT License or the Apache License version 2.0, at your
option. See the files `LICENSE-MIT` and `LICENSE-APACHE` for details.
(synchronoise is named after [a move in Pokemon][synch], by the way)
[synch]: http://bulbapedia.bulbagarden.net/wiki/Synchronoise_(move)
<!-- vim: set tw=100 expandtab: -->
|