OUnit user guide : OUnitRunnerProcesses

# Module OUnitRunnerProcesses

    module OUnitRunnerProcesses: sig .. end

Use processes to run several tests in parallel. * * Run processes that handle running tests. The processes read test, execute * it, and communicate back to the master the log. * * This need to be done in another process because ocaml Threads are not truly * concurrent. Moreover we cannot use Unix.fork because it's not portable

    val make_channel : string ->
           ('a -> string) ->
           ('b -> string) ->
           Unix.file_descr ->
           Unix.file_descr -> ('b, 'a) OUnitRunner.GenericWorker.channel

    val processes_grace_period : (int, unit -> unit) Stdlib.Hashtbl.t -> float

    val processes_kill_period : (int, unit -> unit) Stdlib.Hashtbl.t -> float

    val create_worker : (int, unit -> unit) Stdlib.Hashtbl.t ->
           (OUnitTest.path * 'a * (OUnitTest.ctxt -> 'b))
           OUnitRunner.GenericWorker.MapPath.t ->
           string -> string -> bool -> Unix.file_descr OUnitRunner.GenericWorker.worker

    val workers_waiting : Unix.file_descr OUnitRunner.GenericWorker.worker list ->
           float -> Unix.file_descr OUnitRunner.GenericWorker.worker list

    val init : unit -> unit