alarm

alarmに秒数を指定することで、指定した秒後にシグナルSIGALRMを発生させる。

Man page of ALARM

これを使って、アラーム(タイマー)処理を行うことができる。

3秒後にSIGALRMを発生させ、handlerで拾う。

$ vi alarm.c
$ gcc alarm.c -o alarm
$ ./alarm
process running...(signal(SIGALRM, handler))
process running...(signal(SIGALRM, handler))
process running...(signal(SIGALRM, handler))
sig = 14
This is SIGALRM!
process running...(signal(SIGALRM, handler))
process running...(signal(SIGALRM, handler))
process running...(signal(SIGALRM, handler))
process running...(signal(SIGALRM, handler))
process running...(signal(SIGALRM, handler))
process running...(signal(SIGALRM, handler))
process running...(signal(SIGALRM, handler))
$

3秒後にSIGALRMが来たことがわかる。

Sample/unixsyscall/alarm/alarm/src/alarm at master · bg1bgst333/Sample · GitHub