… | |
… | |
142 | many BSD systems. Support for kqueue will be detected at runtime, with a |
142 | many BSD systems. Support for kqueue will be detected at runtime, with a |
143 | safe fallback to other methods when it cannot be used. |
143 | safe fallback to other methods when it cannot be used. |
144 | |
144 | |
145 | Note that kqueue is broken on most operating systems, so by default it |
145 | Note that kqueue is broken on most operating systems, so by default it |
146 | won't be used on many platforms, but you can still create your own event |
146 | won't be used on many platforms, but you can still create your own event |
147 | loop with kqueue backend. |
147 | loop with kqueue backend if you ask specifically for it. |
148 | |
148 | |
149 | Here is what we know: |
149 | Here is what we know: |
150 | |
150 | |
151 | NetBSD: partially working in at least 3.1. Yeah! :) |
151 | NetBSD: partially working in at least 3.1. Yeah! :) |
152 | FreeBSD: broken on at least 6.2-STABLE, |
152 | FreeBSD: broken on at least 6.2-STABLE, |
… | |
… | |
196 | *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** |
196 | *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** |
197 | |
197 | |
198 | |
198 | |
199 | A backend of a different kind is the Linux inotify(7) interface, which can |
199 | A backend of a different kind is the Linux inotify(7) interface, which can |
200 | be used to speed up (and reduce resource consumption) of stat watchers. If |
200 | be used to speed up (and reduce resource consumption) of stat watchers. If |
201 | you have it, it is usually a good idea to enable it. |
201 | you have the include file and libc support for it, it is usually a good |
|
|
202 | idea to enable it, as kernel availability is detected at runtime. |
202 | |
203 | |
203 | EOF |
204 | EOF |
204 | |
205 | |
205 | my $can_inotify = -e "/usr/include/sys/inotify.h"; |
206 | my $can_inotify = -e "/usr/include/sys/inotify.h"; |
206 | $can_inotify = $ENV{EV_INOTIFY} if exists $ENV{EV_INOTIFY}; |
207 | $can_inotify = $ENV{EV_INOTIFY} if exists $ENV{EV_INOTIFY}; |