package picos
Pico scheduler interface
Install
Dune Dependency
Authors
Maintainers
Sources
picos-0.4.0.tbz
sha256=343a8b4759239ca0c107145b8e2cc94c14625fecc0b0887d3c40a9ab7537b8da
sha512=db22b0a5b3adc603c0e815c9011c779f892b9ace76be018b2198d3e24a7d96727c999701025fe5a5fd07d0b452cb7286fc50c939aba0e4dce809941e9ebc12a6
doc/picos.fifos/Picos_fifos/index.html
Module Picos_fifos
Source
Basic single-threaded effects based Picos
compatible scheduler for OCaml 5.
ℹ️ This scheduler implementation is mostly meant as an example and for use in testing libraries implemented in Picos
.
Briefly:
current
returns the current fiber.spawn
forks a new deep effect handler for each fiber.yield
pushes the current fiber to the back of the internal queue and takes the next fiber to run from the head of the internal queue.cancel_after
uses a per-domain background thread that runs aUnix.select
loop to cancel computations.await
stores the current fiber to be resumed through the trigger and takes next fiber to run from the head of the internal queue.
This scheduler also gives priority to fibers woken up from await
due to being canceled.
run main
runs the main
thunk with the scheduler. Returns after main
and all of the fibers spawned by main
have returned.
The optional forbid
argument defaults to false
and determines whether propagation of cancelation is initially allowed.
sectionYPositions = computeSectionYPositions($el), 10)"
x-init="setTimeout(() => sectionYPositions = computeSectionYPositions($el), 10)"
>