The kqueue module is an interface to the OpenBSD kernel event notification system.
The example program below does the following:
You can now manipulate the file named "test" to see the kqueue module in action.
from openbsd.kqueue import * f = open("test", "w+") ev = EVNode(ident=f, flags=EV_ADD|EV_CLEAR, fflags= EVNode.NOTE_WRITE|EVNode.NOTE_DELETE| EVNode.NOTE_EXTEND|EVNode.NOTE_ATTRIB| EVNode.NOTE_TRUNCATE|EVNode.NOTE_LINK| EVNode.NOTE_RENAME|EVNode.NOTE_REVOKE ) q = KQueue() q.kevent(changelist=[ev]) while 1: evs = q.kevent(nevents=1) print evs[0]
<--previous | contents | next--> | (12/21/04) |