Приостановить разветвленный процесс при запуске - PullRequest
0 голосов
/ 07 июля 2011

Я хочу приостановить (приостановить) разветвленный процесс при запуске и возобновить его позже. Есть ли способ сделать это с POSIX или Solaris.

Ответы [ 3 ]

4 голосов
/ 07 июля 2011

Почему бы просто не вызвать pause() в коде дочернего процесса после fork?

0 голосов
/ 15 июля 2011

Я сделал это с помощью семафора и обработчика сигнала. Чтобы разбудить дочерний процесс, родительский процесс посылает сигнал дочернему процессу, который, в свою очередь, отправляет семафор из обработчика сигнала. Ребенок, который ждал этого семафора, затем просыпается.

0 голосов
/ 07 июля 2011

Вы можете отправить процесс SIGSTOP, а затем продолжить с SIGCONT.

...