C++ boost::asio::高分辨率定时器使用示例?

C++ boost::asio::高分辨率定时器使用示例?,c++,boost,timer,C++,Boost,Timer,我正在尝试使用boost的高分辨率计时器,并得到编译错误。请找到下面的片段 boost::asio::io_service _svc; boost::asio::high_resolution_timer _timer(_svc, boost::chrono::seconds(1)); 错误: 错误:对“boost::asio::basic_waitable_timer::basic_waitable_timer(boost::asio::io_service&,bo

我正在尝试使用boost的高分辨率计时器,并得到编译错误。请找到下面的片段

boost::asio::io_service             _svc;
boost::asio::high_resolution_timer  _timer(_svc, boost::chrono::seconds(1));
错误:

错误:对“boost::asio::basic_waitable_timer::basic_waitable_timer(boost::asio::io_service&,boost::chrono::seconds)”的调用没有匹配的函数


高分辨率计时器显然在引擎盖下使用了C++11的chrono库(如果可用):
boost/asio/high\u resolution\u timer.hpp
第48行

#elif defined(BOOST_ASIO_HAS_STD_CHRONO)
typedef basic_waitable_timer<
    std::chrono::high_resolution_clock>
  high_resolution_timer;
#定义了elif(增压器有标准时间)
typedef基本\可等待\计时器<
标准时钟:高分辨率时钟>
高分辨率定时器;

#include <boost/asio.hpp>
#include <boost/asio/high_resolution_timer.hpp>

int main() {
    boost::asio::io_service             _svc;
    boost::asio::high_resolution_timer  _timer(_svc);

    _timer.expires_from_now(std::chrono::milliseconds(100));
}
#包括
#包括
int main(){
boost::asio::io_服务_svc;
boost::asio::高分辨率计时器(_svc);
_timer.expires_from_now(标准::计时::毫秒(100));
}

使用boost::posix_time::seconds(1)而不是boost::chrono::seconds(1)。我尝试过了&我得到了这个,错误:调用“boost::asio::basic_waitable_timer::basic_waitable_timer::basic_waitable_timer(boost::asio::io_service&,boost::posix_time::seconds)”没有匹配的函数@Jonathan我对此投了赞成票,但我们记错了(我想这是针对截止时间的)