[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: tramp performance on localhost
From: |
Michael Albinus |
Subject: |
Re: tramp performance on localhost |
Date: |
Mon, 24 Mar 2014 09:52:17 +0100 |
User-agent: |
Gnus/5.13 (Gnus v5.13) Emacs/24.3.50 (gnu/linux) |
Thierry Volpiatto <address@hidden> writes:
> However as a first step maybe what could be done instead of using the
> two vars above (on localhost only) would be using libnotify to check if
> something have changed in a directory, (I don't know though if this is
> portable enough) if Yes remove this directory entry from the cache
> (I don't know yet how is your cache) if No do nothing (keep the cache).
Last year, when I have worked on filenotify.el, I've thought about. There
are problems:
- File notification is available only for GNU/Linux (inotify.el), MS
Windows (w32notify.el) and systems using glib (gfilenotify.el). All
BSD based systems (this includes Mac OS) would be out, for example.
- Mounted file systems are not watched in general. Sometimes, the native
file notification library uses polling instead, but you don't know it
for sure.
- In order to be able to handle all files properly, you must run the
file watch as root. Either you use Tramp's file name handler for this,
or you start an external process as root. Both approaches would result
in less performance.
- You don't know in advance, which file will be visited. Either you
watch all local directories on your local host (a big burden, lot of
notifications), or you add directories on the fly, which would result
in a lot of file notification handlers after a while.
I haven't tried a proof of concept. But I believe, that file
notification could not be taken for this use case. It should be
restricted to a known number of files or directories, which you
could determine in advance.
Best regards, Michael.