5 releases
0.2.2 | Mar 19, 2023 |
---|---|
0.2.1 | Dec 16, 2022 |
0.2.0 | Aug 18, 2022 |
0.1.1 | Apr 25, 2022 |
0.1.0 | Apr 23, 2022 |
#879 in Concurrency
21KB
277 lines
poolio
A simple and safe and fast thread-pool based on pure message-passing concurrency defying the mainstream.
- simplicity:
- small API
- less than 300 lines of code
- safety:
- no dependencies (apart from crossbeam)
- thoroughly tested
- memory-safety: no
unsafe
-code - thread-safety:
- no data races
- no deadlocks
- performance:
- crossbeam-channels
- as fast as the most popular Rust threadpool (see Benches)
For documumentation see Released API docs. In particular, you can find a design- and usage-description there.
Benches
The benches pit poolio against threadpool in a battle of computing various lists of primes and writing them to a sink. On a computer 'Intel(R) Core(TM) i7-9750H CPU @ 2.60GHz' (6 cores and 12 CPUs) running x86_64 GNU/Linux we measured the following average times for executing the job:
Primes | poolio | threadpool |
---|---|---|
6 workers | 27.468 ms | 28.431 ms |
12 workers | 24.056 ms | 23.456 ms |
This suggests that the poolio and threadpool are equally performant. The full result can be downloaded here. (The benchmarks are powered by criterion.)
Contributing
If you want to contribute: CONTRIBUTING.
Security
For security-related issues see: SECURITY.
Dependencies
~125KB