我只是对此感到好奇。
我在一台计算机上打开了一个网络文件夹,查看文件夹中的文件。从另一台计算机上,我在网络上打开了相同的文件夹并删除了一个文件。在第一台计算机上,删除的文件立即从列表中消失。
我能想到的唯一方法是它不断检查打开文件夹的内容。但这听起来会浪费很多资源,但我想不出任何其他方式可以做到这一点。所以我只是想知道......这是如何工作的?
谢谢。
我只是对此感到好奇。
我在一台计算机上打开了一个网络文件夹,查看文件夹中的文件。从另一台计算机上,我在网络上打开了相同的文件夹并删除了一个文件。在第一台计算机上,删除的文件立即从列表中消失。
我能想到的唯一方法是它不断检查打开文件夹的内容。但这听起来会浪费很多资源,但我想不出任何其他方式可以做到这一点。所以我只是想知道......这是如何工作的?
谢谢。
这可能是一个推送通知。与客户端计算机不断检查不同,服务器在进行更改时向客户端发送消息。
您从未指定您感兴趣的平台。通常,唯一可移植的是轮询以查看文件或目录何时更新。大约每秒轮询一次通常不会太昂贵,尽管在网络文件系统上它可能太多了。
各种平台提供了多种解决方案,以便在文件系统更改时得到通知。Linux 的现代版本提供inotify
. Mac OS X 提供了 FSEvent 系统。在 Windows 上有一个目录更改通知系统。