#Lock Pool (High performance, no_std::no_alloc, asynchronous, fair object pool)

3 messages · Page 1 of 1 (latest)

silk lodge
#

I recently wrote lock_pool which is being put into production with the use case of pooling connections under high contention. From my benchmarks it performed exceptionally well under high contention, and with good reason.

Rather than wrapping the pool with a mutex, the pool itself is the synchronization mechanism, distributing contention amongst all objects. It prioritizes fairness for acquisition, and does a good job with this. I've tested this implementation extensively with loom, and on first go all green checks!

I hope some of you can get value from this work.

https://crates.io/crates/lock_pool
https://github.com/IronVelo/lock_pool
https://docs.rs/lock_pool/0.1.0/lock_pool/

Please provide feedback!

GitHub

Robust, efficient, high performance, asynchronous object pooling. - IronVelo/lock_pool

hallow briar
#

does it only allow to .get() stuff that was created at the beginning or is there some way to push or smth?

silk lodge