[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
bug#25122: 24.5; function describe-variable hangs on large variables
From: |
npostavs |
Subject: |
bug#25122: 24.5; function describe-variable hangs on large variables |
Date: |
Sun, 12 Mar 2017 10:15:21 -0400 |
User-agent: |
Gnus/5.13 (Gnus v5.13) Emacs/25.2 (gnu/linux) |
Thierry Volpiatto <thierry.volpiatto@gmail.com> writes:
> npostavs@users.sourceforge.net writes:
>
>> and suspend it after printing X lines.
>
> Instead just print something like "Computing foo value ..." and let finish
> the thread, letting user reading and moving cursor in docstring while it
> finishes, once done save-excursion and send message "Computing foo value
> done".
Threads aren't truly parallel. The user can't do anything while the
thread is running.
>
>> Then hitting RET on "..." would just print another X lines.
>
> I think like Drew that this would be annoying.
I wonder if we could just hook this into scrolling somehow? So the
lines would only be printed when you scroll to look at them.
>
> That said, what's the reason of choosing the slower approach to compute
> value (in a thread or not) instead of using the approach described in
> the advice I sent here which takes 1s to compute load-history instead of
> 3mn ? (I use this advice since one year now without any problems).
As mentioned in https://debbugs.gnu.org/cgi/bugreport.cgi?bug=21717#8,
it breaks circularity. Try describing this variable:
(defvar circular-list
(let ((l (number-sequence 1 100)))
(setcdr (last l) l)
l)
"A circular list that has problems with (mapc 'pp val).")
We could probably achieve something similar without breaking circular
printing by not calling indent-sexp on the full list, but 1s is longer
than "instant" anyway (which is about 50ms or less) which is why I'm
exploring other options.
- bug#25122: 24.5; function describe-variable hangs on large variables, npostavs, 2017/03/11
- bug#25122: 24.5; function describe-variable hangs on large variables, Stefan Monnier, 2017/03/11
- bug#25122: 24.5; function describe-variable hangs on large variables, Thierry Volpiatto, 2017/03/11
- bug#25122: 24.5; function describe-variable hangs on large variables, npostavs, 2017/03/11
- bug#25122: 24.5; function describe-variable hangs on large variables, Drew Adams, 2017/03/11
- bug#25122: 24.5; function describe-variable hangs on large variables, Thierry Volpiatto, 2017/03/12
- bug#25122: 24.5; function describe-variable hangs on large variables, Stefan Monnier, 2017/03/12
- bug#25122: 24.5; function describe-variable hangs on large variables,
npostavs <=
- bug#25122: 24.5; function describe-variable hangs on large variables, Drew Adams, 2017/03/12
- bug#25122: 24.5; function describe-variable hangs on large variables, Stefan Monnier, 2017/03/12
- bug#25122: 24.5; function describe-variable hangs on large variables, npostavs, 2017/03/12
- bug#25122: 24.5; function describe-variable hangs on large variables, npostavs, 2017/03/13
- bug#25122: 24.5; function describe-variable hangs on large variables, npostavs, 2017/03/13
- bug#25122: 24.5; function describe-variable hangs on large variables, npostavs, 2017/03/15
bug#25122: 24.5; function describe-variable hangs on large variables, Thierry Volpiatto, 2017/03/11