alarm
使用alarm函数可以设置一个定时器(闹钟时间),在将来的某个时刻该定时器会超时。当定时器超时时,产生SIGALRM信号。如果忽略或不捕获此信号,则其默认动作是终止调用该alarm函数的进程。
|
|
参数seconds的值是产生信号SIGALRM需要经过的时钟秒数。当这一时刻到达时,信号由内核产生,由于进程调度的延迟,所以进程得到控制从而能够处理该信号还需要一个时间间隔。
每个进程只能有一个闹钟时间。如果在调用alarm时,之前已为该进程注册的闹钟时间还没有超时,则该闹钟时间的余留值作为本次alarm函数调用的值返回。已经注册的闹钟时间则被新值取代。
如果由以前注册的尚未超过的闹钟时间,而且本次调用的second值是0,则取消以前的闹钟时间,其余留值仍作为为alarm函数的返回值。
示例
|
|
|
|
pause
pause函数使调用进程挂起直至捕捉到一个信号。
|
|
只有执行了一个信号处理程序并从其中返回时,pause才返回。这种情况下,pause返回-1,errno设置为EINTR。
|
|
|
|