3.2.3 异步通知与轮询 在文件操作接口的工程实践中,“异步通知与轮询”从来不是教科书里轻描淡写的两个并列选项——它是一场关于时间感知、资源权衡与系统诚实性的持续博弈。当你调用 成功返回, 完成却尚未落盘, 返回了陈旧数据,抑或 显示的 比实际修改晚了 87 毫秒……这些看似琐碎的“时序偏差”,正是异步通知与轮询机制在底层激烈角力后浮出水面的涟漪。 我们不谈抽象概念。本节直击 3.2.3 异步通知与轮询 的实现肌理:不是“应该用 inotify 还是 kqueue”,而是—— 当你手写一个基于 的文件变更监听器时, 组合触发后,为何 返回的路径可能已失效? 为何轮询间隔设为 反而比 更耗 CPU?又为何在 NVMe SSD 上将轮询周期压到 却几乎不增负载?