procmgr_daemon()

Run a process in the background

Synopsis:

#include <sys/procmgr.h>

int procmgr_daemon( int status,
                    unsigned flags );

Arguments:

status
The status that you want to return to the parent process.
flags
The flags currently defined (in <sys/procmgr.h>) are:

Library:

libc

Use the -l c option to qcc to link against this library. This library is usually included automatically.

Description:

The function procmgr_daemon() function lets programs detach themselves from the controlling terminal and run in the background as system daemons. This also puts the caller into session 1.

The High Availability Manager (HAM) automatically monitors processes detached using procmgr_daemon() because they're in session 1. For more information, see the High Availability Framework Developer's Guide.

The argument status is returned to the parent process as if exit() were called; the returned value is normally EXIT_SUCCESS.


Note: The data in the siginfo_t structure for the SIGCHLD signal that the parent receives isn't useful in this case.

Returns:

A nonnegative integer, or -1 if an error occurs.

Classification:

QNX Neutrino

Safety:
Cancellation point No
Interrupt handler No
Signal handler Yes
Thread Yes

See also:

daemon(), exit(), procmgr_event_notify(), procmgr_event_notify_add(), procmgr_event_trigger(), procmgr_guardian(), procmgr_session()