Spawn detached processes with no need to wait on them
|Copyright||Copyright © 2016, Roman Chistokhodov|
|Registered by||Roman Chistokhodov|
To use this package, put the following dependency into your project's dependencies section:
Spawn detached processes in D.
Standard D library does not provide a way to start detached process and requires to wait on returned Pid. Without waiting you will get zombie processes (resource leakage) if parent process outlives its child.
detached solves this problem by introducing the spawnProcessDetached function which has almost the same API as spawnProcess.
- Run process detached, i.e. with no need to wait.
- Actually reports errors from exec- functions unlike spawnProcess which just checks if executable and working directory exist before fork and hopes their states leave unchanged before exec.
A way to close standard streams in spawned process (e.g. for daemon creation).
Simple program demonstrating the usage of spawnProcessDetached.
dub run :spawn -- --workdir=/usr/local -- pwd dub run :spawn -- --stdout=/dev/null --stderr=/dev/null -- vlc dub run :spawn -- -v HELLO=WORLD -- sh -c 'echo $HELLO'