sig
type elt
type collection
type ('a, 'b) t = {
register : (JoinPool.Shared.S.elt, 'a) JoinPool.Shared.worker Join.chan;
register_interruptible :
((JoinPool.Shared.S.elt, 'a) JoinPool.Shared.interruptible_worker *
JoinPool.Shared.kill)
Join.chan;
fold : JoinPool.Shared.S.collection -> ('a -> 'b -> 'b) -> 'b -> 'b;
}
val create : unit -> ('a, 'b) JoinPool.Shared.S.t
end