Struct forkjoin::JoinBarrier [] [src]

pub struct JoinBarrier<Ret: Send + Sync> {
    pub ret_counter: AtomicUsize,
    pub joinfun: TaskJoin<Ret>,
    pub joinfunarg: Vec<Ret>,
    pub parent: ResultReceiver<Ret>,
}

Internal struct for receiving results from multiple subtasks in parallel

Fields

ret_counter: AtomicUsize

Atomic counter counting missing arguments before this join can be executed.

joinfun: TaskJoin<Ret>

Function pointer to execute when all arguments have arrived.

joinfunarg: Vec<Ret>

Vector holding the results of all subtasks. Initialized unsafely so can't be used for anything until all the values have been put in place.

parent: ResultReceiver<Ret>

Where to send the result of the execution of joinfun