2 releases
Uses new Rust 2024
| 0.1.1 | Sep 5, 2025 |
|---|---|
| 0.1.0 | Aug 30, 2025 |
#10 in #recycle
208 downloads per month
Used in 18 crates
(via poolshark)
7KB
127 lines
Thead Safe Object Pool
This is a general purpose thread safe object pool that supports most data structures in the standard library, as well as many useful external data structures such as IndexMap, triomphe::Arc, etc.
It limits the pool size as well as the element size to prevent memory waste.
use std::sync::LazyLock;
use poolshark::Pool;
static POOL: LazyLock<Pool<Vec<String>>> = LazyLock::new(|| Pool::new(1024, 1024))
fn main() {
let mut v = POOL.take();
// do stuff with v
drop(v) // v actually goes back into the pool
}
Dependencies
~160–570KB
~14K SLoC