vorner / corona

Coroutine and async/await support for tokio-based futures
Apache License 2.0
119 stars 8 forks source link

Corona

Deprecated

This library supports tokio 0.1, which is outdated. There's not much need for it any more since Rust supports native async/await syntax. Use some of the async libraries directly.

About the library

Travis Build Status AppVeyor Build status

When you need to get the asynchronous out of the way.

Corona is a library providing stackful coroutines for Rust. They integrate well with futures ‒ it is possible to switch between the abstractions as needed, each coroutine is also a future and a coroutine can wait for a future to complete. Furthermore, the futures don't have to be 'static.

On the other hand, there's a runtime cost to the library. The performance does not necessarily suffer (as seen in the benchmarks). But each coroutine has its own stack, which takes memory.

You want to read the docs and examine the examples.

License

Licensed under either of

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.