方法一:延时后执行
_timer.expires_from_now(boost::posix_time::microseconds(1)); _timer.async_wait(boost::bind(&Player::_onTimer, this, boost::asio::placeholders::error));
方法二:不延时执行
boost::system::error_code error; _io_service.post(boost::bind(&Player::_onTimer, this, error));
注意:boost的定时器是软件模拟的,虚拟机上的定时器可能导致出现误差,用async_wait可能导致服务器执行效率下降!!!