Scroll to navigation

TICKIT_WATCH_SIGNAL(3) Library Functions Manual TICKIT_WATCH_SIGNAL(3)

NAME

tickit_watch_signal - invoke a callback when a POSIX signal is raised

SYNOPSIS

#include <tickit.h>

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

void *tickit_watch_signal(Tickit *t, int signum, TickitBindFlags flags,
    TickitCallbackFn *fn, void *user);

Link with -ltickit.

DESCRIPTION

tickit_watch_signal() registers a callback function to be invoked by the toplevel event loop when a POSIX signal is received by the process. A registered callback will be invoked by a running call to tickit_run(3). The callback function may be invoked more than once, if the signal is received multiple times. The info pointer will be NULL.

Multiple registrations may be made for the same signal number; when that signal is received all of them will be invoked in the order they exist in the queue. 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_signal() 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_process(3), tickit_watch_cancel(3), tickit(7)