##// END OF EJS Templates
merge with stable
merge with stable

File last commit:

r13400:14f3795a default
r17596:2eac9641 merge default
Show More
__init__.py
44 lines | 1.3 KiB | text/x-python | PythonLexer
Bryan O'Sullivan
Add inotify extension
r6239 # __init__.py - low-level interfaces to the Linux inotify subsystem
# Copyright 2006 Bryan O'Sullivan <bos@serpentine.com>
# This library is free software; you can redistribute it and/or modify
# it under the terms of version 2.1 of the GNU Lesser General Public
Matt Mackall
Update license to GPLv2+
r10263 # License, or any later version.
Bryan O'Sullivan
Add inotify extension
r6239
'''Low-level interface to the Linux inotify subsystem.
The inotify subsystem provides an efficient mechanism for file status
monitoring and change notification.
This package provides the low-level inotify system call interface and
associated constants and helper functions.
For a higher-level interface that remains highly efficient, use the
inotify.watcher package.'''
__author__ = "Bryan O'Sullivan <bos@serpentine.com>"
from _inotify import *
procfs_path = '/proc/sys/fs/inotify'
def _read_procfs_value(name):
def read_value():
try:
Dan Villiom Podlaski Christiansen
explicitly close files...
r13400 fp = open(procfs_path + '/' + name)
r = int(fp.read())
fp.close()
return r
Peter Arrenbrecht
cleanup: drop unused assignments
r7875 except OSError:
Bryan O'Sullivan
Add inotify extension
r6239 return None
read_value.__doc__ = '''Return the value of the %s setting from /proc.
If inotify is not enabled on this system, return None.''' % name
return read_value
max_queued_events = _read_procfs_value('max_queued_events')
max_user_instances = _read_procfs_value('max_user_instances')
max_user_watches = _read_procfs_value('max_user_watches')