Currently, Lwt_unix installs a SIGCHLD
signal handler soon after start-up. It uses this to implement waitpid
.
This has a couple of problems. The first problem is that, due to #981, the handler corrupts memory and leads to segfaults. However, even when that is fixed it would still be useful to be able to fork processes using both Lwt and e.g. Eio. Currently, eio_posix installs a handler and then Lwt overwrites it. And even with eio_linux (which doesn't use a signal handler), Lwt's handler may reap Eio's processes before it can collect them.
Therefore, I propose adding some kind of process support to Lwt_engine.t
. Then e.g. lwt_eio can provide an engine that delegates signal handling to Eio.
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