4

Inotify 不会在文件更改时触发/sys- 有什么方法可以订阅那里的更改?

4

3 回答 3

2

改变 /sys 的事件通常由 udev 处理。因此,您可以添加 udevd 规则来处理事件或使用 libudev 访问和监控 sysfs。我刚刚在这里找到了一些教程:http ://www.signal11.us/oss/udev/

于 2011-05-26T13:36:20.800 回答
1

使用 udev 和 udev 规则获取反映在 /sys 中的更改通知(硬件热插拔、驱动程序加载、固件加载等)。

有关详细信息,请参阅http://hackaday.com/2009/09/18/how-to-write-udev-rules/

于 2011-05-26T13:35:01.247 回答
1

为了在 /sys 文件或目录发生更改时收到通知,我使用来自 python的轮询对象。

import select

poll_objet = select.poll()
fd_object = file("/sys/what_you_want_to_survey", "r")
poll_objet.register(fd_object) # I use the select.POLLPRI | select.POLLERR combination in my code ;)
result = poll_object.poll()

其中 result 是被触摸的 (fd, event) 列表。

于 2011-05-26T13:35:40.203 回答