[Top][All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: call-process should not block process filters from running

From: sbaugh
Subject: Re: call-process should not block process filters from running
Date: Tue, 04 Jul 2023 08:42:31 -0400
User-agent: Gnus/5.13 (Gnus v5.13)

Po Lu <luangruo@yahoo.com> writes:
> It's not a bug.  It doesn't have to be fixed.  If your particular use
> case is okay with running Lisp while waiting for a process to complete,
> then it should use accept-process-output, not call-process.

Sure.  So I would go through Emacs, changing call-process users
case-by-case to instead use accept-process-output in a synchronous way,
if they are okay with running Lisp.  I'm fine with doing that, but
others appear to be concerned that that would hurt performance.

Also, it's worth noting that process-file makes doing that a little
tricky.  process-file already usually runs Lisp while waiting for the
process when it's using a remote file name handler, but when it's
running locally it just uses call-process.  So users of process-file
would need to be converted to start-file-process so that they're
uniformly asynchronous.  But, some TRAMP backends support process-file
but not start-file-process.  So it's not clear what a programmer should
do if they want to synchronously run a process through a file name
handler, and they're fine with Lisp running during that.  (Making
call-process optionally support running Lisp neatly solves this:
process-file users can just bind call-process-run-lisp to t around

reply via email to

[Prev in Thread] Current Thread [Next in Thread]