NAME¶
File::ChangeNotify::Watcher::KQueue - KQueue-based watcher subclass
DESCRIPTION¶
This class implements watching using IO::KQueue, which must be installed for it
to work. This is a BSD alternative to Linux's Inotify and similar event-based
systems.
CAVEATS¶
Although this watcher is more efficient and accurate than the
"File::ChangeNotify::Watcher::Default" class, in order to monitor
files and directories, it must open filehandles to each of them. Because many
BSD systems have relatively low defaults for the maximum number of files each
process can open, you may find you run out of file descriptors.
On FreeBSD, you can check (and alter) your system's settings with
"sysctl" if necessary. The important keys are:
"kern.maxfiles" and "kern.maxfilesperproc". You can see
how many files your system current has open with "kern.openfiles".
On OpenBSD, the "sysctl" keys are "kern.maxfiles" and
"kern.nfiles". Per-process limits are set in
/etc/login.conf.
See
login.conf(5) for details.
SUPPORT¶
I (Dave Rolsky) cannot test this class, as I have no BSD systems. Reasonable
patches will be applied as-is, and when possible I will consult with Dan
Thomas or other BSD users before releasing.
AUTHOR¶
Dan Thomas, <dan@cpan.org>
COPYRIGHT AND LICENSE¶
This software is Copyright (c) 2010 by Dave Rolsky.
This is free software, licensed under:
The Artistic License 2.0