std.process.wait() will wait for a child process to exit and
return its exit code. How can this be done in Vibe.d, without
blocking other fibers and without creating a new thread?
In my library I did it like this:
https://github.com/CyberShadow/ae/blob/master/sys/process.d
(register a SIGCHLD signal handler, which pings the main thread
via a socket).
Geod24 on IRC suggested signalfd + createFileDescriptorEvent. I
think this would work, but isn't it possible to wrap the fd
returned by signalfd into a Vibe.d stream and read it directly?
I'm just not sure how.
I noticed libasync also provides notification for POSIX signals,
but I've no idea where to start with using that in a Vibe.d
program.
- vibe.d - asynchronously wait(... Vladimir Panteleev via Digitalmars-d-learn
-