Module: SleepyPenguin::EvFilt

Defined in:
ext/sleepy_penguin/kqueue.c,
ext/sleepy_penguin/kqueue.c

Overview

Pre-defined system filters for Kqueue events. Not all filters are supported on all platforms. Consult the kevent(2) man page and source code for your operating system for more information.

Constant Summary collapse

READ =

See EVFILT_READ in the kevent(2) man page

INT2NUM(EVFILT_READ)
WRITE =

See EVFILT_WRITE in the kevent(2) man page

INT2NUM(EVFILT_WRITE)
AIO =

See EVFILT_AIO in the kevent(2) man page, not supported by libkqueue

INT2NUM(EVFILT_AIO)
VNODE =

See EVFILT_VNODE in the kevent(2) man page

INT2NUM(EVFILT_VNODE)
PROC =

Monitor process IDs, not supported by libkqueue

INT2NUM(EVFILT_PROC)
SIGNAL =

the use of EvFilt::SIGNAL is NOT supported in Ruby Ruby runtimes already manage all signal handling in the process, so attempting to manage them with a kqueue causes conflicts. We disable the Linux SignalFD interface for the same reason.

Note
TIMER =

See EVFILT_TIMER in the kevent(2) man page

INT2NUM(EVFILT_TIMER)
NETDEV =

network devices, no longer supported

INT2NUM(EVFILT_NETDEV)
FS =

See EVFILT_FS in the kevent(2) man page, not supported by libkqueue

INT2NUM(EVFILT_FS)
LIO =

attached to lio requests, not supported by libkqueue

INT2NUM(EVFILT_LIO)
USER =

see EVFILT_USER in the kevent(2) man page

INT2NUM(EVFILT_USER)