This crate provides:
-
A specialized, custom thread pool,
DispatchPool, for offloading blocking or otherwise long running operations from a main or reactor threads. -
A
BlockingPermitfor limiting the number of concurrent blocking operations via aSemaphoretype. -
A
Cleaverfor splittingStreambuffers into more manageable sizes. -
A
YieldStreamfor yielding betweenStreamitems.
MSRV := 1.45.2
The crate will fail fast on any lower rustc (via a build.rs version check) and is also CI tested on this version.
This project is dual licensed under either of following:
-
The Apache License, version 2.0 (LICENSE-APACHE or http://www.apache.org/licenses/LICENSE-2.0)
-
The MIT License (LICENSE-MIT or http://opensource.org/licenses/MIT)
Unless you explicitly state otherwise, any contribution intentionally submitted for inclusion in blocking-permit by you, as defined by the Apache License, shall be dual licensed as above, without any additional terms or conditions.