Just the other day I wrote something just like this, but I used inotify.
I have to monitor a fairly small direcotry tho, so I didn't encounter any problem.
both of which use the inotify interface and attempt to set watches on each individual subdirectory
Is this really necessary? Inotify's man page says it can monitor a whole directory with only one watch, so that's what I did and it looks like it's working
I didn't make a lot of tests tho, so I might be wrong
Edit: from the inotify man page:
Inotify monitoring of directories is not recursive: to monitor subdirectories under a directory, additional watches must be created. This can take a significant amount time for large directory trees.
Yeah, it is necessary. That's what I get for not reading the whole thing.