[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Experiment with threads - no concurrency?
From: |
Arthur Miller |
Subject: |
Re: Experiment with threads - no concurrency? |
Date: |
Mon, 06 Sep 2021 20:10:05 +0200 |
User-agent: |
Gnus/5.13 (Gnus v5.13) Emacs/28.0.50 (gnu/linux) |
Eli Zaretskii <eliz@gnu.org> writes:
>> From: Arthur Miller <arthur.miller@live.com>
>> Cc: emacs-devel@gnu.org
>> Date: Mon, 06 Sep 2021 18:40:46 +0200
>>
>> > You shouldn't. Emacs doesn't switch threads on just any I/O, it
>> > switches threads when it waits for input from subprocesses, network,
>> > and keyboard.
>>
>> Allright, so in order to exploit I/O concurrency here, the only way is to
>> start
>> another emacs process asynchronously?
>
> Yes, I think so, because in this case the I/O happens inside Emacs
> primitives.
>
>> Could split file list I get from
>> directory-files-recursively into say 4 parts, and process files in 4
>> processes. Is there any benefit to use threads in that case?
>
> No, I don't think so.
>
>> it takes like 3 seconds to parse all files in lisp dir sequentially
>
> You have tried that on relatively small directories, I think.
It was like all lisp that comes with Emacs :-) alis lisp dir in Emacs source
dir, I was looking for defuns and defmacros.
Anyway, thanks for the input, I'll look for the tests you mentioned in previous
mail, but it feels that I don't have much use of threads. Maybe if I had some
long running async process, I could check for results, but in this particular
case, I guess I have no use for threads.