This module is primarily meant for backwards compatibility with code that used earlier
versions of Rpc_parallel
. Please consider using the Parallel.Make()
functor
instead as the semantics are more transparent and intuitive.
This functor keeps cached connections to workers and dispatches on these connections.
The semantics of reconnect are not currently well-defined. If you expect connections
to drop or want multiple connections to the same worker, using Parallel.Make()
is
probably the better choice. If you are only holding one connection to each spawned
worker, using this functor might require less code.
module type Worker : sig ... end
module Make : functor (S : Parallel.Worker_spec) -> Worker with type a functions := a S.functions and type worker_state_init_arg := S.Worker_state.init_arg and type connection_state_init_arg := S.Connection_state.init_arg