void again() { if (iWaiting) throw already_waiting(); iTimerObject.expires_from_now(boost::posix_time::milliseconds(iDuration_ms)); iTimerObject.async_wait(boost::bind(&timer::handler, this, boost::asio::placeholders::error)); iWaiting = true; }
void timer::again() { if (disabled()) enable(false); if (waiting()) throw already_waiting(); iTimerObject.expires_from_now(boost::posix_time::milliseconds(iDuration_ms)); iTimerObject.async_wait(boost::bind(&handler_proxy::operator(), iHandlerProxy, boost::asio::placeholders::error)); iWaiting = true; }