看看 timer watcher 如何用。
--------------------------------------------------------------------------
#include <ev.h>
#include <stdio.h>
#include <time.h>
static void
t1_cb(struct ev_loop *loop, ev_timer *timer, int revents)
{
printf("t1 = %d\n", time(NULL));
}
static void
t2_cb(struct ev_loop *loop, ev_timer *timer, int revents)
{
printf("t2 = %d\n", time(NULL));
}
int main(void)
{
struct ev_loop *loop = ev_default_loop(0);
ev_timer t1, t2;
// ev_XXX_init == ev_init + ev_xxx_set
ev_timer_init(&t1, t1_cb, 10.0, 0.0); // trigger only once
ev_timer_start(loop, &t1);
ev_timer_init(&t2, t2_cb, 8.0, 1.0); // first trigger after 8.0 secs, then repeat every 2.0 secs
ev_timer_start(loop, &t2);
ev_run(loop, 0);
return 0;
}
--------------------------------------------------------------------------
评论