diff options
author | Pino Toscano <toscano.pino@tiscali.it> | 2012-06-19 00:53:40 +0200 |
---|---|---|
committer | Pino Toscano <toscano.pino@tiscali.it> | 2012-06-19 00:53:40 +0200 |
commit | 59344d6c9615e22ecad1e9860b7e287bd92ea6fa (patch) | |
tree | ed010f39c7d5c2cc1f7f93b4c2dadfea3debd53b /open_issues/alarm_setitimer | |
parent | 17f42781111a3c07f57718f79dd1ce098038ecbb (diff) |
open_issues/alarm_setitimer: New.
Diffstat (limited to 'open_issues/alarm_setitimer')
-rw-r--r-- | open_issues/alarm_setitimer/alrm.c | 32 |
1 files changed, 32 insertions, 0 deletions
diff --git a/open_issues/alarm_setitimer/alrm.c b/open_issues/alarm_setitimer/alrm.c new file mode 100644 index 00000000..689020ee --- /dev/null +++ b/open_issues/alarm_setitimer/alrm.c @@ -0,0 +1,32 @@ +#include <signal.h> +#include <stdio.h> +#include <stdlib.h> +#include <unistd.h> + +static const char msg[] = "< got alarm\n"; + +static void sighandler(int signo __attribute__((unused))) +{ + write(STDOUT_FILENO, msg, sizeof(msg) - 1); +} + +int main() +{ + struct sigaction sa; + sa.sa_handler = sighandler; + sigemptyset(&sa.sa_mask); + sa.sa_flags = 0; + if (sigaction(SIGALRM, &sa, NULL) == -1) + return 1; + + printf("> alarm in 2 secs...\n"); + alarm(2); + pause(); + + printf("> alarm!\n"); + + pause(); + printf("> got a signal...\n"); + + return 0; +} |