# Tokio Utils [github](https://github.com/wcygan/tokio-utils) [crates.io](https://crates.io/crates/tokio-utils) [docs.rs](https://docs.rs/tokio-utils) [build status](https://github.com/wcygan/tokio-utils/actions?query=branch%3Amain) Tools for asynchronous programming in [Tokio](https://tokio.rs/) applications: #### Resource Pooling - [Pool](https://docs.rs/tokio-utils/latest/tokio_utils/struct.Pool.html), a shared resource pool. #### Rate Limiting - [RateLimiter](https://docs.rs/tokio-utils/latest/tokio_utils/struct.RateLimiter.html), a rate limiter - [MultiRateLimiter](https://docs.rs/tokio-utils/latest/tokio_utils/struct.MultiRateLimiter.html), a key-based rate limiter #### Graceful Shutdown - [ShutdownController](https://docs.rs/tokio-utils/latest/tokio_utils/struct.ShutdownController.html), a controller for graceful shutdown - [ShutdownMonitor](https://docs.rs/tokio-utils/latest/tokio_utils/struct.ShutdownMonitor.html), a monitor for graceful shutdown #### Stdin - [recv_from_stdin](https://docs.rs/tokio-utils/latest/tokio_utils/fn.recv_from_stdin.html), a channel that receives data from stdin ## Usage Add this to your Cargo.toml: ```toml [dependencies] tokio-utils = "0.1.2" ```