[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
bug#51886: 29.0.50; pixel-scroll-mode garbage collects like crazy
From: |
Robert Pluim |
Subject: |
bug#51886: 29.0.50; pixel-scroll-mode garbage collects like crazy |
Date: |
Tue, 16 Nov 2021 14:28:23 +0100 |
>>>>> On Tue, 16 Nov 2021 15:05:32 +0200, Eli Zaretskii <eliz@gnu.org> said:
>> Date: Tue, 16 Nov 2021 15:21:31 +0800
>> From: Po Lu via "Bug reports for GNU Emacs,
>> the Swiss army knife of text editors" <bug-gnu-emacs@gnu.org>
>>
>> Starting from `emacs -Q', do M-x pixel-scroll-mode RET, then configure
>> it as follows:
>>
>> (setq pixel-dead-time 0)
>> (setq pixel-resolution-fine-flag 1)
>> (setq garbage-collection-messages t)
>>
>> Then scroll the display with the mouse wheel. It will garbage collect
>> like crazy, leading to a great deal of stuttering (in emacs-28 as well).
>>
>> I want to reuse most of the code in pixel-scroll.el for XInput2 pixel
>> scrolling, but this is holding me back, as the excessive garbage
>> collection makes it completely unusable.
Eli> Did you try to figure out which part of the code produces most of the
Eli> garbage?
I suspect itʼs the bit that counts from k to n by generating a list of
the integers from k to n and then running dolist over that.
As an aside, that code also does a lot of (sit-for 0), which I seem to
remember can trigger redisplay? Perhaps it should only do that when it
really wants to pause.
Robert
--