TICKIT_WATCH_PROCESS(3)

NAME
tickit_watch_process - invoke a callback when a child process terminates

SYNOPSIS
    #include <tickit.h>

    typedef struct {
      pid_t pid;
      int wstatus;
    } TickitProcessWatchInfo;

    typedef int TickitCallbackFn(Tickit *t, TickitEventflags flags,
        void *info, void *user);

    void *tickit_watch_process(Tickit *t, pid_t pid, TickitBindFlags flags,
        TickitCallbackFn *fn, void *user);

Link with -ltickit.

DESCRIPTION
tickit_watch_process() registers a callback function to be invoked by the toplevel event loop when a child process terminates. A registered callback will be invoked by a running call to tickit_run(3). The info pointer will point to a structure containing the process PID and exit status.

If registered with the TICKIT_BIND_FIRST flag, the callback will be inserted at the start of the queue, coming before others. If not, it is appended at the end.

If cancelled by tickit_watch_cancel(3) the callback function is invoked with just the TICKIT_EV_UNBIND flag if it had been registered with TICKIT_BIND_UNBIND.

RETURN VALUE
tickit_watch_process() returns an opaque identifier pointer.

SEE ALSO
tickit_new_stdio(3), tickit_watch_io(3), tickit_watch_timer_after_msec(3), tickit_watch_timer_at_epoch(3), tickit_watch_later(3), tickit_watch_signal(3), tickit_watch_cancel(3), tickit(7)