Может ли дочерний процесс отправить сигнал родителю после смерти родителя - PullRequest
0 голосов
/ 18 апреля 2020

Предположим, что после сна мы уверены, что родитель умер. Таким образом, дочерний процесс становится сиротским процессом. Итак, что произойдет, дочерний процесс отправит SIGUSR1 своему родителю, который является процессом init.

Код:

int main(int argc, char const *argv[])
{
    if(fork() == 0){
        sleep(10);
        kill(getppid(),SIGUSR1);
    }

    return 0;
}

После запуска этого кода система вышла из системы. Но когда я сделал это в терминале по

sudo kill -10 1

, ничего не произошло. В чем разница между ними? И почему система позволяет мне делать это плохо?

...