#include "StdAfx.h" #include #include "acl_cpp/stream/aio_handle.hpp" #include "winaioDlg.h" #include "AioTimer.hpp" //#include //using namespace acl; CAioTimer::CAioTimer(acl::aio_handle* handle, int id, bool keep) : acl::aio_timer_callback(keep) , handle_(handle) , id_(id) , inited_(false) { } CAioTimer::~CAioTimer() { std::cout << "timer deleted" << std::endl; } void CAioTimer::timer_callback(unsigned int id) { const char* s = keep_timer() ? "keep timer" : "cancel timer"; std::cout << "timer " << id_ << ':' << id << " callback! " << s << std::endl; if (inited_) return; inited_ = true; #if 0 handle_->del_timer(this); handle_->delay_free(this); #elif 1 set_task(1, 5000000); set_task(2, 4000000); set_task(3, 3000000); set_task(4, 2000000); set_task(5, 1000000); #endif } void CAioTimer::destroy(void) { delete this; }