unofficial mirror of emacs-devel@gnu.org 
 help / color / mirror / code / Atom feed
* Using glib's g_file_monitor_file and g_file_monitor_directory
@ 2013-03-20 20:40 Michael Albinus
  2013-03-21 14:06 ` Ted Zlatanov
  2013-04-01 11:36 ` Michael Albinus
  0 siblings, 2 replies; 68+ messages in thread
From: Michael Albinus @ 2013-03-20 20:40 UTC (permalink / raw)
  To: emacs-devel

Hi,

for GNU/Linux systems, we have inotify support now. As discussed when it
was added, there are some drawbacks. So it seems to work for local file
systems only; network file systems might work, or not.

There is an alternative: glib's functions g_file_monitor_file and
g_file_monitor_directory. They will use inotify when it is
applicable. Otherwise, they implement polling, which is something we
would need also in Emacs, when no native file monitoring is possible.

g_file_monitor_file works even for gvfs mounted filesystems (I've tested
with mounts of kind davs://..., smb://... and ftp://...). Likely, via
polling.

And it also has a kqueue backend for NetBSD (see
https://mail.gnome.org/archives/commits-list/2012-November/msg03867.html). I
don't know whether this is used widely, 'tho.

What about adding this interface to Emacs, on C level? It could be in
parallel to, or replacing the inotify interface.

Best regards, Michael.



^ permalink raw reply	[flat|nested] 68+ messages in thread

end of thread, other threads:[~2013-06-08  8:50 UTC | newest]

Thread overview: 68+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2013-03-20 20:40 Using glib's g_file_monitor_file and g_file_monitor_directory Michael Albinus
2013-03-21 14:06 ` Ted Zlatanov
2013-03-21 14:54   ` Michael Albinus
2013-03-21 16:05     ` Ted Zlatanov
2013-03-22  7:52       ` Michael Albinus
2013-04-01 11:36 ` Michael Albinus
2013-04-01 17:50   ` Jan Djärv
2013-04-03 18:12   ` Stefan Monnier
2013-04-03 19:21     ` James Cloos
2013-04-03 19:36       ` Eli Zaretskii
2013-04-03 20:46         ` James Cloos
2013-04-03 19:55       ` Michael Albinus
2013-04-03 19:58         ` James Cloos
2013-04-04  0:49       ` Stefan Monnier
2013-05-28 10:39     ` Michael Albinus
2013-05-28 14:44       ` Paul Eggert
2013-05-28 15:33         ` Eli Zaretskii
2013-05-28 16:02           ` Paul Eggert
2013-05-28 16:21             ` Stefan Monnier
2013-05-28 16:45               ` Eli Zaretskii
2013-05-28 18:19                 ` Stefan Monnier
2013-05-29 13:46               ` Michael Albinus
2013-05-29 14:03                 ` Stefan Monnier
2013-05-29 14:09                   ` Michael Albinus
2013-05-29 17:40                     ` Stefan Monnier
2013-05-30 14:09                       ` Michael Albinus
2013-05-30 21:08                         ` Stefan Monnier
2013-05-28 16:43             ` Eli Zaretskii
2013-05-28 16:52               ` Paul Eggert
2013-05-28 16:59                 ` Eli Zaretskii
2013-05-28 19:32                   ` Paul Eggert
2013-05-28 15:58         ` Michael Albinus
2013-05-28 19:04           ` Paul Eggert
2013-05-28 20:31             ` Michael Albinus
2013-05-28 20:38               ` Paul Eggert
2013-05-29  6:12                 ` Michael Albinus
2013-05-28 15:29       ` Eli Zaretskii
2013-05-29 13:30         ` Michael Albinus
2013-05-29 15:25           ` Eli Zaretskii
2013-05-29 15:57             ` Michael Albinus
2013-05-30 20:15               ` Daniel Colascione
2013-05-31  6:38                 ` Michael Albinus
2013-06-02 16:57               ` Eli Zaretskii
2013-06-03 13:21                 ` Michael Albinus
2013-06-03 15:12                   ` Eli Zaretskii
2013-06-03 15:30                     ` Glenn Morris
2013-06-03 16:29                       ` Eli Zaretskii
2013-06-03 17:04                         ` Eli Zaretskii
2013-06-03 17:27                           ` Glenn Morris
2013-06-03 19:41                             ` Michael Albinus
2013-06-04  6:09                               ` Paul Eggert
2013-06-05 13:25                                 ` Michael Albinus
2013-06-05 18:37                                   ` Jan Djärv
2013-06-06 11:06                                     ` Michael Albinus
2013-06-07 10:53                                       ` Jan Djärv
2013-06-07 12:18                                         ` Michael Albinus
2013-06-07 14:22                                           ` Jan Djärv
2013-06-07 14:50                                             ` Michael Albinus
2013-06-08  8:50                                               ` Jan Djärv
2013-06-04  6:45                               ` Paul Eggert
2013-06-04 15:16                                 ` Eli Zaretskii
2013-06-04 15:50                                   ` Paul Eggert
2013-06-05  1:23                                     ` Stefan Monnier
2013-06-06  7:10                                       ` Paul Eggert
2013-06-03 19:10                     ` Michael Albinus
2013-05-30 11:11             ` Ken Brown
2013-05-28 15:30       ` Eli Zaretskii
2013-05-29 13:31         ` Michael Albinus

Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/emacs.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).