package devkit

  1. Overview
  2. Docs
Legend:
Page
Library
Module
Module type
Parameter
Class
Class type
Source

Module Devkit_core.ExtThreadSource

Thread utilities

Sourceval locked : Mutex.t -> (unit -> 'a) -> 'a
Sourcetype 'a t
Sourceval detach : ('a -> 'b) -> 'a -> 'b t
Sourceval join : 'a t -> 'a Exn.result
Sourceval join_exn : 'a t -> 'a
Sourceval map : ('a -> 'b) -> 'a array -> 'b array

parallel Array.map

Sourceval mapn : ?n:int -> ('a -> 'b) -> 'a list -> 'b Exn.result list

parallel map with the specified number of workers, default=8

Sourcemodule LockMutex : sig ... end
Sourcemodule Async_fin : sig ... end

Communication from worker threads to the main event loop

Sourceval log_create : ?name:string -> ('a -> unit) -> 'a -> Thread.t

Create new thread wrapped in Action.log

Sourceval run_periodic : delay:float -> ?now:bool -> (unit -> bool) -> unit

run f in thread periodically once in delay seconds.

  • parameter f

    returns false to stop the thread, true otherwise

  • parameter now

    default false

Sourcemodule type WorkerT = sig ... end
Sourcemodule type Workers = sig ... end
Sourcemodule Workers (T : WorkerT) : Workers with type task = T.task and type result = T.result

Thread workers

Sourcemodule Pool : sig ... end
OCaml

Innovation. Community. Security.