|
From: | Dmitry Gutov |
Subject: | Re: call-process should not block process filters from running |
Date: | Wed, 5 Jul 2023 21:53:21 +0300 |
User-agent: | Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.11.0 |
On 04/07/2023 21:12, sbaugh@catern.com wrote:
Dmitry Gutov <dmitry@gutov.dev> writes:On 03/07/2023 03:02, sbaugh@catern.com wrote:Since project-find-regexp can take many seconds on large repos, I think this is useful. However, my other main test case/use case, being able to paste while Emacs is in call-process, doesn't work with this change. Any idea on how to make that work?Do you have some particular aim related to project-find-regexp? Having Emacs interactive and responsive while the search is ongoing would require a different direction in design. Is the goal simply to have other, unrelated code keep running?I merely use project-find-regexp as an example of an important function that uses call-process. The goal is indeed simply to have other unrelated code keep running. And to be able to paste in other X clients. And be able to call project-find-regexp (and other call-process using functions) from a Lisp thread.
Cool.project-find-regexp also works over Tramp, though. Given Michael's objections in the other subthread, do you expect the proposed change might break that? If it simply keeps the current limitations (when invoked on a remote host), that's probably fine.
Changing project-find-regexp to use asynchronous processes would be nice, but more work, requiring more design effort. Running processes synchronously is fine, if it doesn't block unrelated code.
Sure. And there's some expected additional process handling overhead after switching to asynchronous calling. Though it would be nice to do some experiments, to measure the potential slowdown.
[Prev in Thread] | Current Thread | [Next in Thread] |