A RetroSearch Logo

Home - News ( United States | United Kingdom | Italy | Germany ) - Football scores

Search Query:

Showing content from https://github.com/ocaml-multicore/lwt_eio/issues/15 below:

Lwt_unix.fork causes trouble · Issue #15 · ocaml-multicore/lwt_eio · GitHub

The tests run Lwt_process.(pread (shell "echo test"), but this isn't reliable.

Simpler test case:

open Eio.Std

let () =
  Eio_main.run @@ fun env ->
  Lwt_eio.with_event_loop ~clock:env#clock @@ fun _ ->
  for _ = 1 to 100 do
    let output = Lwt_eio.run_lwt (fun () ->
        match Lwt_unix.fork () with
        | 0 -> Unix._exit 1
        | _child -> Lwt.return "ok"
      ) in
    traceln "got: %s" output
  done

Fails with:

+got: ok
+got: ok
fish: “dune exec -- ./examples/simple.…” terminated by signal SIGSEGV (Address boundary error)

(the number of "ok"s varies)


RetroSearch is an open source project built by @garambo | Open a GitHub Issue

Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo

HTML: 3.2 | Encoding: UTF-8 | Version: 0.7.4