[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: async Gnus
From: |
Thomas Fitzsimmons |
Subject: |
Re: async Gnus |
Date: |
Wed, 26 Jan 2022 10:32:26 -0500 |
User-agent: |
Gnus/5.13 (Gnus v5.13) Emacs/28.0.50 (gnu/linux) |
Hi Manuel,
Manuel Giraud <manuel@ledu-giraud.fr> writes:
> Eli Zaretskii <eliz@gnu.org> writes:
>
>>> From: Manuel Giraud <manuel@ledu-giraud.fr>
>>> Date: Wed, 26 Jan 2022 11:05:43 +0100
>>> Cc: emacs-devel@gnu.org
>>>
>>> I'm suprprise: I thought that `make-thread' create a proper system
>>> thread.
>>
>> It does. But we only let a single thread at a time to run the Lisp
>> interpreter. So if your thread runs a lot of Lisp, it will preempt
>> the main thread, and that means unresponsive Emacs.
>
> Ok so, as Python, Emacs has a GIL. As Gnus seems to be an heavy user of
> Lisp maybe my goal is inaccessible… I'll try to see what I end up with
> anyway 😅
Bug 49065 has a huge patch that, among other things, introduces a
background thread for gnus-group-get-new-news. It was never accepted
because the author didn't break the larger patch into smaller chunks for
review. Maybe you could start from that large patch, confirm the
asynchronous changes work for you, then separate out the
background-thread parts to submit.
Thomas