名前

alarm - シグナル配送のためのアラームクロックを設定する

書式

#include <unistd.h>
unsigned int alarm(unsigned int seconds);

説明

alarm() は SIGALRM シグナルを seconds 秒後に呼び出したプロセスに配送するように手配する。
seconds がゼロならば、処理待ち (pending) のアラームはすべてキャンセルされる。
今までに設定されていた alarm() は中断される。

返り値

alarm() は以前に予定されていたアラームの配送までの残り時間を返す。以前に アラームが予定されていなければゼロを返す。

準拠


POSIX.1-2001, POSIX.1-2008, SVr4, 4.3BSD.

注意

alarm() と setitimer(2) は同じタイマーを共有している; 片方を呼び出すことはもう一方の 使用に影響を与える。
alarm() で作成されたアラームは execve(2) の前後で保持され、 fork(2) で作成された子プロセスには継承されない。
sleep(3)SIGALRM を利用して実装されているかもしれない。 alarm() と sleep(3) を混ぜて使用してはならない。
スケジューリング(scheduling)の遅延により、プロセスの実行に不定量の 遅延が起きる可能性がある。

関連項目


gettimeofday(2), pause(2), select(2), setitimer(2), sigaction(2), signal(2), timer_create(2), timerfd_create(2), sleep(3), time(7)

この文書について

この man ページは Linux man-pages プロジェクトのリリース 5.10 の一部である。プロジェクトの説明とバグ報告に関する情報は https://www.kernel.org/doc/man-pages/ に書かれている。