使用C语言的Unix概念进行目录监视的代码
在服务器上,进程监视Unix文件系统中的文件。
如果客户端发送要监视的文件名,则服务器必须将报告发送给客户端,无论该文件是否已更改或删除。
对于服务器 – 客户端通信,我们应该使用消息队列或套接字。
对于文件中的每个更改,服务器都必须通知该更改。
对于所有文件中的所有更改,服务器必须维护一个日志文件,以便用户可以通过命令行界面查看它。
服务器可以使用两个线程:一个用于通信,另一个用于监视。
你怎么能有效地做到这一点?
看看http://en.wikipedia.org/wiki/Inotify上的inotify – 只有我害怕linux。
BSD有kqueue – 请参阅http://en.wikipedia.org/wiki/Kqueue 。