Как "VIEWS directory" автоматически обновляет свой список файлов? - PullRequest
0 голосов
/ 16 апреля 2009

Мне просто интересно об этом.

У меня была открыта сетевая папка на одном компьютере для просмотра файлов в папке. С другого компьютера я открыл эту же папку в сети и удалил файл. На первом компьютере удаленный файл немедленно исчез из списка.

Единственный способ, которым я могу думать о том, откуда он это знает, - это постоянно проверять содержимое открытой папки. Но это звучит так, как будто это потратило бы много ресурсов, но я не могу думать ни о каком другом способе сделать это. Так что мне просто интересно ... как это работает?

Спасибо.

Ответы [ 2 ]

1 голос
/ 16 апреля 2009

Это, вероятно, push-уведомление. Вместо того, чтобы клиентский компьютер постоянно проверял, сервер отправляет сообщение клиенту при внесении изменений.

0 голосов
/ 16 апреля 2009

Вы никогда не указывали, какую платформу вы интересуете. В целом, единственное, что переносимо, это опрос, чтобы увидеть, когда файл или каталог был обновлен. Опрос один раз в секунду обычно обходится не слишком дорого, хотя для сетевой файловой системы это может быть слишком много.

Различные платформы предлагают различные решения для уведомления об изменении файловых систем. Современные версии Linux предоставляют inotify. Mac OS X предоставляет систему FSEvent . В Windows есть система уведомлений об изменении каталога .

...