ИМЯ
alarm − установка времени доставки тревожного сигнала
ОБЗОР
#include <unistd.h>
unsigned int alarm(unsigned int seconds);
ОПИСАНИЕ
Системный вызов alarm выполняет в вызвавший его процесс доставку сигнала " SIGALRM через seconds секунд.
Если seconds равно нулю, то никаких новых тревожных сигналов в очередь поставлено не будет.
Если случиться какое-либо событие (интересно какое? -- прим. пер.), любые предыдущие установки alarm отменяются.
ВОЗВРАЩАЕМОЕ ЗНАЧЕНИЕ
alarm возвращает количество секунд, оставшихся до момента доставки сигнала, установленного предыдущим вызовом alarm или ноль, если в очереди нет тревожных сигналов.
ЗАМЕЧАНИЯ
Вызовы alarm и setitimer совместно используют один и тот же таймер; они будут конфликтовать друг с другом.
sleep() может быть реализован, используя SIGALRM; так что смешанное использование вызовов alarm() и sleep() − это плохая идея.
Постановка сигнала в очередь может вызывать задержу выполнения вызвавшего процесса на некоторое время.
СООТВЕТСТВИЕ СТАНДАРТАМ
SVr4, SVID, POSIX, X/OPEN, BSD 4.3
СМОТРИ ТАКЖЕ
setitimer(2), signal(2), sigaction(2), gettimeofday(2), select(2), pause(2), sleep(3)
ПЕРЕВОД
Перевёл с английского Виктор Вислобоков <corochoone [AT] perm.ru> 2003