正版 芦花 2023-10-23 21:22 采纳率: 100%
浏览 4
已结题

inotify的delete self事件应该怎么触发?

我用cpp在android平台上实现了inotify的注册监听,但是当我删除所监听的这个目录(通过电脑的可视化界面,删除手机中的该目录)时,delete self事件没有被触发。请问这是什么原因?我看网上都是用linux系统的vim触发的这个事件。请问这个是因为操作问题吗?还是其他什么原因?

  • 写回答

1条回答 默认 最新

  • 专家-赤兔[在线] 全栈领域优质创作者 2023-10-24 12:25
    关注

    引自强大而免费的微信小程序:皆我百晓生

    inotify是Linux内核提供的用于监控文件系统事件的机制,因此只能在Linux系统上使用。

    在Linux系统中,inotify的DELETE_SELF事件会在所监听的目录被删除时触发。但是在Android系统上,删除目录的操作可能不会触发DELETE_SELF事件,这可能是因为Android系统中的文件系统或者底层机制与Linux系统存在差异导致的。

    另外,使用电脑的可视化界面删除手机中的目录可能不会引发inotify事件的原因可能是因为,这个删除操作是在电脑上进行的,而inotify监听的是Android设备上的文件系统事件。因此,你可能需要在Android设备上以某种方式删除所监听的目录,触发DELETE_SELF事件。

    如果你想在Android系统上监听DELETE_SELF事件,你可以尝试使用android-inotify库来实现,该库是针对Android系统进行了适配的一个inotify库。具体的使用方法可以参考该库的文档和示例代码。

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

问题事件

  • 系统已结题 11月3日
  • 已采纳回答 10月26日
  • 创建了问题 10月23日

悬赏问题

  • ¥15 圆孔衍射光强随孔径变化
  • ¥15 MacBook pro m3max上用vscode运行c语言没有反应
  • ¥15 ESP-PROG配置错误,ALL ONES
  • ¥15 结构功能耦合指标计算
  • ¥50 AI大模型精调(百度千帆、飞浆)
  • ¥15 非科班怎么跑代码?如何导数据和调参
  • ¥15 福州市的全人群死因监测点死亡原因报表
  • ¥15 Altair EDEM中生成一个颗粒,并且各个方向没有初始速度
  • ¥15 系统2008r2 装机配置推荐一下
  • ¥15 悬赏Python-playwright部署在centos7上