/* * Escreve uma mensagem antes de interromper ou * retomar a execução. */ #include #include #include #include void trata_SIGCONT(int signum); void trata_SIGTSTP(int signum); void trata_SIGTSTP(int signum) { printf("Vamos parar um pouquinho.\n"); signal(SIGCONT, trata_SIGCONT); signal(SIGTSTP, SIG_DFL); raise(SIGTSTP); } void trata_SIGCONT(int signum) { printf("Vamos continuar.\n"); signal(SIGTSTP, trata_SIGTSTP); signal(SIGCONT, SIG_DFL); raise(SIGCONT); } int main() { printf("Meu pid é: %d\n", getpid()); signal(SIGTSTP, trata_SIGTSTP); while (1) sleep(1); return 0; }