OpamParallelParallel execution of jobs following a directed graph
module type VERTEX = sig ... endmodule type G = sig ... endWhen one job fails due to an exception, other running jobs are interrupted and reported with this sub-exception in the Errors list
Simply parallel execution of tasks
In the simple iter, map and reduce cases, ints are the indexes of the jobs in the list. First list is return code of sucessfull commands, second those which raised expcetions, and third one those which were canceled.
val iter : jobs:int -> command:('a -> unit OpamProcess.job) -> ?dry_run:bool -> 'a list -> unitval map : jobs:int -> command:('a -> 'b OpamProcess.job) -> ?dry_run:bool -> 'a list -> 'b listval reduce : jobs:int -> command:('a -> 'b OpamProcess.job) -> merge:('b -> 'b -> 'b) -> nil:'b ->
?dry_run:bool -> 'a list -> 'bMore complex parallelism with dependency graphs
module type SIG = sig ... endmodule type GRAPH = sig ... end