brotli::enc::threading

Trait BatchSpawnable

source
pub trait BatchSpawnable<ReturnValue: Send + 'static, ExtraInput: Send + 'static, Alloc: BrotliAlloc + Send + 'static, U: Send + 'static + Sync>
where <Alloc as Allocator<u8>>::AllocatedMemory: Send + 'static,
{ type JoinHandle: Joinable<ReturnValue, BrotliEncoderThreadError>; type FinalJoinHandle: OwnedRetriever<U>; // Required methods fn make_spawner(&mut self, input: &mut Owned<U>) -> Self::FinalJoinHandle; fn spawn<F: Fn(ExtraInput, usize, usize, &U, Alloc) -> ReturnValue + Send + 'static + Copy>( &mut self, handle: &mut Self::FinalJoinHandle, alloc: &mut SendAlloc<ReturnValue, ExtraInput, Alloc, Self::JoinHandle>, index: usize, num_threads: usize, f: F, ); }

Required Associated Types§

Required Methods§

source

fn make_spawner(&mut self, input: &mut Owned<U>) -> Self::FinalJoinHandle

source

fn spawn<F: Fn(ExtraInput, usize, usize, &U, Alloc) -> ReturnValue + Send + 'static + Copy>( &mut self, handle: &mut Self::FinalJoinHandle, alloc: &mut SendAlloc<ReturnValue, ExtraInput, Alloc, Self::JoinHandle>, index: usize, num_threads: usize, f: F, )

Object Safety§

This trait is not object safe.

Implementors§

source§

impl<ReturnValue: Send + 'static, ExtraInput: Send + 'static, Alloc: BrotliAlloc + Send + 'static, U: Send + 'static + Sync> BatchSpawnable<ReturnValue, ExtraInput, Alloc, U> for MultiThreadedSpawner
where <Alloc as Allocator<u8>>::AllocatedMemory: Send + 'static,

source§

impl<ReturnValue: Send + 'static, ExtraInput: Send + 'static, Alloc: BrotliAlloc + Send + 'static, U: Send + 'static + Sync> BatchSpawnable<ReturnValue, ExtraInput, Alloc, U> for SingleThreadedSpawner
where <Alloc as Allocator<u8>>::AllocatedMemory: Send + 'static,