Crates.io | blocking-permit |
lib.rs | blocking-permit |
version | 1.3.3 |
source | src |
created_at | 2019-12-20 21:17:22.156387 |
updated_at | 2021-10-28 21:58:59.647406 |
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.