gix_features::parallel

Function in_parallel_if

Source
pub fn in_parallel_if<I, S, O, R>(
    condition: impl FnOnce() -> bool,
    input: impl Iterator<Item = I> + Send,
    thread_limit: Option<usize>,
    new_thread_state: impl FnOnce(usize) -> S + Send + Clone,
    consume: impl FnMut(I, &mut S) -> O + Send + Clone,
    reducer: R,
) -> Result<<R as Reduce>::Output, <R as Reduce>::Error>
where R: Reduce<Input = O>, I: Send, O: Send,
Available on crate feature parallel only.
Expand description

Run in_parallel() only if the given condition() returns true when eagerly evaluated.

For parameters, see the documentation of in_parallel()