Re: Pause a process execution from external program

From: Valdis KlÄtnieks
Date: Thu Jun 13 2019 - 15:48:39 EST


On Thu, 13 Jun 2019 13:22:12 +0530, Shyam Saini said:

> from command line we use ctrl-z to stop execution of a foreground
> process but you can program
> SIGTSTP signal handler in your application code to do the same.

Note that if you simply fail to include a signal handler for SIGSTOP and
SIGCONT, it will Do The Right Thing. The only programs that need worry about
SIGTSTP are ones like 'vi' that may want to do something (like restore the
terminal state from raw to cooked mode, etc) before they stop. That's why you
can control-z /bin/cat without it having to include a signal handler for it.

% kill -STOP `pidof process-to-stop` # stop it
% kill -CONT `pidof process-to-stop` # and make it run again.

No source code modifications needed. No source needed.

Now, if you want to make it stop at a *specific point*, then you're into
ptrace territory, and source will be helpful.

Attachment: pgpxG7H_EKcp2.pgp
Description: PGP signature