mirror of
https://github.com/troglobit/libuev.git
synced 2026-11-13 17:01:02 +00:00
1 parent
0e97bfdc5a
commit
748ebc998c
3 files changed
+18
-18
No files matched your search
+4
-4
@@ -82,7 +82,7 @@ static void pipe_read_cb(uev_t *w, void UNUSED(*arg), int events)
|
|||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
/* Kick watchdog */
|
/* Kick watchdog */
|
||||||
if (watchdog)
|
if (watchdog)
|
||||||
uev_timer_set(watchdog, 1000, 0);
|
uev_timer_set(watchdog, 1000, 0);
|
||||||
|
|
||||||
@@ -112,9 +112,9 @@ static void pipe_write_cb(uev_t *w, void *arg, int UNUSED(events))
|
|||||||
|
|
||||||
/* Here we *must* use out, not w->fd, since we're a timer callback */
|
/* Here we *must* use out, not w->fd, since we're a timer callback */
|
||||||
if (write(out, msg, my->counter) < 0) {
|
if (write(out, msg, my->counter) < 0) {
|
||||||
perror("\nFailed writing to pipe");
|
perror("\nFailed writing to pipe");
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
// fprintf(stderr, "WRITE %.*s %d\n", my->counter, msg, my->counter);
|
// fprintf(stderr, "WRITE %.*s %d\n", my->counter, msg, my->counter);
|
||||||
fprintf(stderr, "%d ", my->counter);
|
fprintf(stderr, "%d ", my->counter);
|
||||||
|
|||||||
+1
-1
@@ -66,7 +66,7 @@ int main(void)
|
|||||||
|
|
||||||
printf("Start of test %s", ctime(&tv.tv_sec));
|
printf("Start of test %s", ctime(&tv.tv_sec));
|
||||||
printf("Expected cron %s", ctime(&when));
|
printf("Expected cron %s", ctime(&when));
|
||||||
|
|
||||||
interval = INTERVAL;
|
interval = INTERVAL;
|
||||||
uev_cron_init(&ctx, &cron_watcher, cron_job, NULL, when, interval);
|
uev_cron_init(&ctx, &cron_watcher, cron_job, NULL, when, interval);
|
||||||
|
|
||||||
|
|||||||
+13
-13
@@ -63,7 +63,7 @@ static int callback(arg_t *arg, int event, void *foo)
|
|||||||
printf("child: segfaulting failed!\n");
|
printf("child: segfaulting failed!\n");
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
return 42;
|
return 42;
|
||||||
}
|
}
|
||||||
|
|
||||||
static void sigsegv_cb(uev_t *UNUSED(w), void *UNUSED(arg), int UNUSED(events))
|
static void sigsegv_cb(uev_t *UNUSED(w), void *UNUSED(arg), int UNUSED(events))
|
||||||
@@ -74,27 +74,27 @@ static void sigsegv_cb(uev_t *UNUSED(w), void *UNUSED(arg), int UNUSED(events))
|
|||||||
|
|
||||||
static void sigchld_cb(uev_t *UNUSED(w), void *UNUSED(arg), int UNUSED(events))
|
static void sigchld_cb(uev_t *UNUSED(w), void *UNUSED(arg), int UNUSED(events))
|
||||||
{
|
{
|
||||||
pid_t pid = waitpid(-1, NULL, WNOHANG);
|
pid_t pid = waitpid(-1, NULL, WNOHANG);
|
||||||
|
|
||||||
if (-1 != pid)
|
if (-1 != pid)
|
||||||
warnx("PID %d exited, bye.", pid);
|
warnx("PID %d exited, bye.", pid);
|
||||||
}
|
}
|
||||||
|
|
||||||
static void work_cb(uev_t *UNUSED(w), void *arg, int UNUSED(events))
|
static void work_cb(uev_t *UNUSED(w), void *arg, int UNUSED(events))
|
||||||
{
|
{
|
||||||
int status = 0;
|
int status = 0;
|
||||||
pid_t pid;
|
pid_t pid;
|
||||||
|
|
||||||
pid = fork();
|
pid = fork();
|
||||||
if (-1 == pid)
|
if (-1 == pid)
|
||||||
err(1, "fork");
|
err(1, "fork");
|
||||||
if (!pid) {
|
if (!pid) {
|
||||||
status = callback(arg, 6137, NULL);
|
status = callback(arg, 6137, NULL);
|
||||||
exit(status);
|
exit(status);
|
||||||
}
|
}
|
||||||
|
|
||||||
if (waitpid(pid, &status, 0) == -1)
|
if (waitpid(pid, &status, 0) == -1)
|
||||||
err(1, "waitpid");
|
err(1, "waitpid");
|
||||||
|
|
||||||
if (WIFEXITED(status))
|
if (WIFEXITED(status))
|
||||||
printf("Child exited normally => %d\n", WEXITSTATUS(status));
|
printf("Child exited normally => %d\n", WEXITSTATUS(status));
|
||||||
@@ -108,7 +108,7 @@ static void work_cb(uev_t *UNUSED(w), void *arg, int UNUSED(events))
|
|||||||
|
|
||||||
static void exit_cb(uev_t *w, void *UNUSED(arg), int UNUSED(events))
|
static void exit_cb(uev_t *w, void *UNUSED(arg), int UNUSED(events))
|
||||||
{
|
{
|
||||||
printf("Process deadline reached, exiting!\n");
|
printf("Process deadline reached, exiting!\n");
|
||||||
uev_exit(w->ctx);
|
uev_exit(w->ctx);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in new issue
Block a user