Skip to content

gio: new kqueue() sybsytem

rim requested to merge rozhuk-im/glib:master into master

#1460 (closed)

Features:

  • totally async: all file operations in separate thread, witch communicate via pipe: this is for prevent GUI freezes on open dir with many files/slow fs
  • less CPU usage
  • adaptive rate limit to prevent high CPU usage on many files changes during long time (ex. build some big app)
  • lite monitoring mode for non local file systems: to avoid freezes on open some network dir via file manager (many open() call even in separate thread will cause GUI freeze)
  • tunable limit for local dir files count: if dir contain more than LIMIT files count then do not monitor files changes, only dir changes
  • tunable to disable monitor for subfiles and subdirs on non local filesystems
  • small code size: less than 1500 lines
  • can be build and debug without glib

Merge request reports