我需要分别使用 SIGUSR2 和 SIGUSR1 阻止和唤醒进程。下面是我的信号处理程序子例程。如何唤醒被暂停阻止的进程?
void sig_handler(int sig) {
static int i = 1;
if(sig == SIGUSR2) {
pause();
}
else if(sig == SIGUSR1) {
/* I don't what to write here */
}
}
另外,我在某处读到 pause() 不是一个好的编程习惯,还有其他方法可以暂停进程一段时间吗?