| Crates.io | blocking-permit |
| lib.rs | blocking-permit |
| version | 1.3.3 |
| created_at | 2019-12-20 21:17:22.156387+00 |
| updated_at | 2021-10-28 21:58:59.647406+00 |
| description | Permits and a thread pool for blocking operations |
| homepage | |
| repository | https://github.com/dekellum/blocking-permit |
| max_upload_size | |
| id | 191079 |
| size | 98,167 |
This crate provides:
A specialized, custom thread pool, DispatchPool, for offloading
blocking or otherwise long running operations from a main or reactor
threads.
A BlockingPermit for limiting the number of concurrent blocking operations
via a Semaphore type.
A Cleaver for splitting Stream buffers into more manageable sizes.
A YieldStream for yielding between Stream items.
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.