emacs-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: undo-auto--undoable-change infloop


From: Michael Heerdegen
Subject: Re: undo-auto--undoable-change infloop
Date: Sat, 30 Jul 2022 03:14:18 +0200
User-agent: Gnus/5.13 (Gnus v5.13) Emacs/29.0.50 (gnu/linux)

Stefan Monnier <monnier@iro.umontreal.ca> writes:

> Maybe this is a symptom of having way too many timers?

Maybe.

Could it be that when executing the timer function takes longer than the
0.1 seconds repeat delta, the timer fires again?  I had hoped that I
would handle that by checking the idle time - but when the function is
run, Emacs is still idle (running timers counts as idle AFAIR), although
it is actually quite busy.

I once used an variable watcher on timer-list and saw that it contained
hundreds or thousands of instances of my timer.  But these were not
different instances, I only ever create one timer when stating logging.
Ant the value list looked like (#1=[ilog-timer] #1# #1# ...very very
many #1#s and a few different timers).

Now I'm trying to protect the timer using a flag with the purpose to
prevent the timer function to do anything when the timer function is
currently called.

But does that even make sense, can that happen at all?  Or could it be
that the waiting instances are processed sequentially but take longer to
process than 0.1 seconds - longer than new instances are added?

But that all seems very strange.  Maybe just something is not in
order...?

Michael.



reply via email to

[Prev in Thread] Current Thread [Next in Thread]