jwiegley / emacs-async

Simple library for asynchronous processing in Emacs
GNU General Public License v3.0
837 stars 68 forks source link

async dired operations cause Emacs to hang #146

Open darkfeline opened 3 years ago

darkfeline commented 3 years ago

async dired operations cause Emacs to hang sometimes. For example, when renaming a small file asynchronously, shortly after triggering the rename, Emacs locks up for half a second.

Not sure how to debug this. I tried toggle-debug-on-quit, but quitting during the hang returns redisplay-internal, which suggests to me that the hang is happening in an uninterruptible section.

Possibly this is related to NFS since that tends to cause uninterruptible syscalls.

https://github.com/jwiegley/emacs-async/pull/144 is a "workaround" for this (although I find that synchronous renames "feel" more responsive than async for fast operations since async refreshes the dired buffer asynchronously when the user may already be inputting other commands like switch-to-buffer).