pub trait TaskQueue: Send + Sync + Sized + 'static {
    type Task: Send + Sync + Sized + 'static;
    type Value: Send;
    type impl_trait_batch_process_0<'async_trait, const N: usize>: Future<Output = CompletionReceipt<Self>> + 'async_trait + Send;

    // Required method
    fn batch_process<'async_trait, const N: usize>(
        assignment: PendingAssignment<'async_trait, Self, N>
    ) -> Self::impl_trait_batch_process_0<'async_trait, N>;

    // Provided method
    fn auto_batch<const N: usize>(task: Self::Task) -> AutoBatchedTask<Self, N> 
       where Self: LocalQueue<N, BufferCell = TaskRef<Self>> { ... }
}
Expand description

Auto-batched queue whereby each task resolves to a value

Required Associated Types§

source

type Task: Send + Sync + Sized + 'static

source

type Value: Send

source

type impl_trait_batch_process_0<'async_trait, const N: usize>: Future<Output = CompletionReceipt<Self>> + 'async_trait + Send

Required Methods§

source

fn batch_process<'async_trait, const N: usize>( assignment: PendingAssignment<'async_trait, Self, N> ) -> Self::impl_trait_batch_process_0<'async_trait, N>

Provided Methods§

source

fn auto_batch<const N: usize>(task: Self::Task) -> AutoBatchedTask<Self, N> where Self: LocalQueue<N, BufferCell = TaskRef<Self>>,

Implementors§