|
From: Nikodemus S. <nik...@ra...> - 2011-02-04 13:32:12
|
On 4 February 2011 11:39, Jianshi Huang <jia...@gm...> wrote:
> It seems processes created by run-program in SBCL won't receive
> signals (like SIGINT) as if they are background processes. Is it
> intended? ( I think it's the job of the terminal to send sigint to all
> foreground processes rather than SBCL's responsibility)
>
> for example, the following case is a little bit annoying.
>
> (sb-ext:run-program "sleep" '("3600") :wait t :search t)
> and break it by C-c, the process "sleep" still exists.
I'm not sure if it is intentional or not.
However, I'm relatively certain that SB-IMPL::*ACTIVE-PROCESSES*
should really be in SB-EXT so that you could clean it up yourself.
I also note that we're missing a simple clean way to terminate a child
process -- now you need to specify a signal _number_ and follow up
with PROCESS-CLOSE. Eugh.
Cheers,
-- Nikodemus
|