1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30
| #include "event2/event.h" #include <stdio.h> #include <time.h>
static void event_selfarg_cb(evutil_socket_t fd, short event, void *arg) { struct event *ev = arg; struct event_base *base = event_get_base(ev); printf("===event trigger %p == %p, is %s\n", ev, event_base_get_running_event(base), ev == event_base_get_running_event(base)?"true":"false"); event_base_loopexit(base, NULL); }
void custom_log_callback(int severity, const char *msg) { printf("%s\n", msg); }
int main() { event_enable_debug_logging(EVENT_DBG_ALL); event_set_log_callback(custom_log_callback);
struct timeval qsec = {2, 100 * 1000}; struct event_base *base = event_base_new(); struct event * ev = evtimer_new(base, event_selfarg_cb, event_self_cbarg() ); printf("add event, info: ptr=%p cbk = %p\n", ev, event_selfarg_cb ); evtimer_add(ev, &qsec); event_base_loop(base, 0); event_base_free(base); return 0; }
|