/// [`Job`]. To run jobs, the [`ParallelRunner::run`] method much be executed on the main thread.
/// Each worker has its own thread that it uses to run a Hurl file, and communicates with the main
/// thread. Standard multi-producer single-producer channels are used between the main runner and
/// The parallel runner is responsible to manage the state of the workers, and to display standard
/// When a job is completed, depending on `output_type`, it can be outputted to standard output:
/// The runner can repeat running a list of jobs. For instance, when repeating two times the job
// If we have any error (either a [`WorkerMessage::IOError`] or a [`WorkerMessage::ParsingError`]