【发布时间】:2013-05-24 03:11:51
【问题描述】:
我有一个使用 asio 截止时间计时器的应用程序。应用程序的其余部分使用std::chrono 构造作为其时间值,并且只对涉及asio 的内容使用boost::posix_time 感觉很尴尬。如果可以的话,我想在整个应用程序中使用std::chrono,以保持一致性、可读性等。
在我看来,答案将涉及使用计时器的模板:
typedef boost::asio::basic_deadline_timer<std::chrono::system_clock::time_point>
my_deadline_timer_type;
my_deadline_timer_type a_timer(io_service);
除了这在编译时严重崩溃...许多错误行,其中大部分与此类似:
/opt/arm/include/boost/asio/deadline_timer_service.hpp:51:43: 错误:无效使用不完整类型'boost::asio::deadline_timer_service >>, boost::asio::time_traits >> >::traits_type {aka struct boost::asio::time_traits > > >}'
所以,看起来我可能需要创建一个新的 traits_type 并使用它声明一个 deadline_timer_service,但我不确定如何/在哪里。我必须相信这个问题已经解决了。我在 linux 上使用带有 -std=c++11 的 g++ 4.7.3,交叉编译到 arm。
【问题讨论】:
标签: c++ boost-asio