Class that handles distribution of data read from streams over a set of tasks in a task pool. The developer must define their own task class to do the work required to handle one record read from the streams; the stream processor takes care of throttling the input streams and distributing the resulting work over the pools of tasks / fibers.
Exception that indicates that used throttler doesn't work as intended
Config struct to use when creating a stream processor that should use the default PoolThrottler for throttling.
Framework for reading from a stream and throttling based on the progress of processing the received data.
It is a relatively simple utility built on top of a task pool, the scheduler, and ISuspendable, to provide "ready to go" functionality to be used in applications.
Usage example: See the documented unittest of the StreamProcessor class