X-Git-Url: https://git.llucax.com/software/eventxx.git/blobdiff_plain/603c9c6d30d790ebe838ae858aeb1b365e06fef0..78deefa0805ff4094dc4bed8ad51aa674e9f375e:/README diff --git a/README b/README index 380ecfb..dbc5a6a 100644 --- a/README +++ b/README @@ -92,6 +92,7 @@ struct handler handler(eventxx::dispatcher& d): d(d), i(0) {} void operator() (int signum, eventxx::type event) { + std::cout << ++i << " interrupts, "; if (i < 5) std::cout << "keep going...\n"; else { @@ -101,19 +102,18 @@ struct handler } }; -void sighandler(int signum, short event, void* data) +void timer_handler(int, short, void*) { - int& i = *static_cast< int* >(data); - std::cout << ++i << " interrupts, "; + std::cout << "Press Ctrl-C 5 times to quit.\n"; } int main() { eventxx::dispatcher d; handler h(d); - eventxx::csignal sigev(SIGINT, sighandler, &h.i); + eventxx::ctimer t(timer_handler); eventxx::signal< handler > e(SIGINT, h); - d.add(sigev); + d.add(t, eventxx::time(1)); // 1 second d.add(e); d.dispatch(); return 0;