Module type JoinPool.Shared.S

module type S = sig .. end
Output signature of the pool functor

type elt 
Element from a collection
type collection 
Collection
type ('partial, 'result) t = {
   register : (elt, 'partial) JoinPool.Shared.worker Join.chan;
   register_interruptible : ((elt, 'partial) JoinPool.Shared.interruptible_worker *
JoinPool.Shared.kill)
Join.chan
;
   fold : collection ->
('partial -> 'result -> 'result) -> 'result -> 'result
;
}
Pools dispatch computations among registered agents, re-issuing pending tasks if agents do not send computation outcomes.

Given a pool p, returned by create ():


val create : unit -> ('partial, 'result) t
Pool creator