|Portability||portable to platforms with POSIX process\/signal tools|
|Maintainer||John Goerzen <email@example.com>|
Tools for writing daemons/server processes
Written by John Goerzen, firstname.lastname@example.org
Please note: Most of this module is not compatible with Hugs.
Messages from this module are logged under
System.Log.Logger for details.
Based on background from http://www.erlenstar.demon.co.uk/unix/faq_2.html#SEC16 and http://www.haskell.org/hawiki/HaskellUnixDaemon.
This module is not available on Windows.
Detach the process from a controlling terminal and run it in the background, handling it with standard Unix deamon semantics.
After running this, please note the following side-effects:
- The PID of the running process will change
- stdin, stdout, and stderr will not work (they'll be set to /dev/null)
- CWD will be changed to /
I highly suggest running this function before starting any threads.
Note that this is not intended for a daemon invoked from inetd(1).