Source file sync_spinning.ml

1
2
3
4
5
6
7
8
9
10
open! Base
open Await_kernel

let sync #({ portended = () }, { global = trigger }) =
  while not (Trigger.is_signalled trigger) do
    Basement.Stdlib_shim.Domain.cpu_relax ()
  done
;;

let sync = Sync.create ~sync ~yield:Null ()