package devkit

  1. Overview
  2. Docs
Development kit - general purpose library

Install

dune-project
 Dependency

Authors

Maintainers

Sources

1.20261006.tar.gz
md5=a39dbbce04bd5562a9b4443daf39c582
sha512=b10104b61384b2151521b785e7f3c3250134c75eae09b42cad69bc4a22a9a5e429beb891ee87cedf376c23d9c40f09d3f71c3fd48aa35df490c0f69dc17f3242

doc/devkit.core/Devkit_core/ExtThread/index.html

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