New parallelization library

As I mentioned in the past, I wrote a new threading system from scratch.
It’s fully async, has unit tests and everything. I uploaded it to nuget so you can use it in your own projects as well.

You can find some sample code here

Ruri

5 Likes

The library has been updated. Here’s the changes

Changelog

2.0.0 - 2026-06-06

Changes since 1.0.6, released on 2022-03-09:

  • Retargeted the package to .NET 10.
  • Added cancellation token support to parallelizer control methods.
  • Reworked TaskBasedParallelizer for more reliable scheduling and completion handling.
  • Improved CPM calculation and CPM limiting behavior.
  • Fixed degree-of-parallelism edge cases, including operation with DoP set to 1.
  • Reduced CPU spinning while waiting under CPM limits.
  • Fixed timing-sensitive stop, abort, start, reset, and completion state transitions.
  • Marked ThreadBasedParallelizer as obsolete.
  • Added and refactored regression tests for task-based, thread-based, and parallel-based parallelizers.
1 Like