package hack_parallel
Parallel and shared memory library
Install
Dune Dependency
Authors
Maintainers
Sources
1.0.1.tar.gz
md5=ba7c72bc207e326b72e294fc76f6ad2c
sha512=5020d47f97bea2f88e2a40411894d03232a7f2282606926c93c7d4c96d72e94a966be852897a9b16f7e0893ba376512045abb9d93020a7c03c3def4f3d918f8e
doc/src/hack_parallel.heap/workerCancel.ml.html
Source file workerCancel.ml
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36
(** * Copyright (c) 2015, Facebook, Inc. * All rights reserved. * * This source code is licensed under the MIT license found in the * LICENSE file in the "hack" directory of this source tree. * *) exception Worker_should_exit let () = Callback.register_exception "worker_should_exit" Worker_should_exit external stop_workers : unit -> unit = "hh_stop_workers" external resume_workers : unit -> unit = "hh_resume_workers" external check_should_exit : unit -> unit = "hh_check_should_exit" external set_can_worker_stop : bool -> unit = "hh_set_can_worker_stop" let on_worker_cancelled = ref (fun () -> ()) let set_on_worker_cancelled f = on_worker_cancelled := f let with_no_cancellations f = Utils.try_finally ~f:begin fun () -> set_can_worker_stop false; f () end ~finally:(fun () -> set_can_worker_stop true) let with_worker_exit f = try f () with | Worker_should_exit -> !on_worker_cancelled (); exit 0 (* Check if the workers are stopped and exit if they are *) let check_should_exit () = with_worker_exit check_should_exit
sectionYPositions = computeSectionYPositions($el), 10)"
x-init="setTimeout(() => sectionYPositions = computeSectionYPositions($el), 10)"
>