From: Joubert N. <jo...@jo...> - 2007-09-18 23:20:55
|
Hello, I have a program that runs an external program like so: (sb-ext:run-program ...) While this is executing, and I interrupt (by pressing Ctrl-C), I get the following from the SBCL, which is what I expect: debugger invoked on a SB-SYS:INTERACTIVE-INTERRUPT in thread #<THREAD "initial thread" {A69E849}>: Interactive interrupt at #xFFFFE410. Type HELP for debugger help, or (SB-EXT:QUIT) to exit from SBCL. restarts (invokable by number or by possibly-abbreviated name): 0: [CONTINUE] Return from SB-UNIX:SIGINT. 1: Ignore and continue with next --eval option. 2: [ABORT ] Skip rest of --eval options. 3: Skip to toplevel READ/EVAL/PRINT loop. 4: [QUIT ] Quit SBCL (calling #'QUIT, killing the process). (SB-UNIX::CALL-WITH-INTERRUPTS #<CLOSURE (FLET SB-UNIX::WITH-INTERRUPTS-THUNK) {B79F43A5}> T) 0]=20 =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D Question: If I choose "(4) Quit", the lisp is killed but the processed spawned by (sb-ext:run-program) continues to run. What would be the recommended way for my application to also kill the process it spawned? Joubert |