objpool

Thread-safe generic object pool

Build Status Coverage Status

Examples

```rust use objpool::PoolBuilder; use std::thread;

let pool = PoolBuilder::new(|| 0).max_items(5).finalize(); let mut handles = Vec::new(); for _ in 0..10 { let pool = pool.clone(); handles.push(thread::spawn(move || { for _ in 0..1000 { *pool.get() += 1; } })); }

for handle in handles { handle.join().unwrap(); } assert_eq!(*pool.get() + *pool.get() + *pool.get() + *pool.get() + *pool.get(), 10000); ```