objpool

Thread-safe generic object pool

Build Status Coverage Status

Examples

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

let pool = Pool::with_capacity(5, || 0); 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); ```