【发布时间】:2013-05-28 14:09:42
【问题描述】:
我想在我的异步调用中使用 boost::asio deadtime_timer。我想在调用对象上调用函数 A::fun(0)。要做到这一点,我会这样做:
io_service io;
deadline_timer timer(io, boost::posix_time::seconds(10));
timer.async_wait(&A::fun, this, 0); //error
io.run();
在第二行我得到了错误:basic_deadline_timer::async_wait(const WaitHandler &)' : 需要 1 个参数 - 2 个提供。
我在某些任务上使用了与启动 boost::threads 相同的语法,我认为它会起作用。
【问题讨论】:
-
您阅读过文档吗? boost.org/doc/libs/1_41_0/doc/html/boost_asio/reference/… 它明确说明了您应该使用哪些参数。
-
好的,现在我相信 timer.async_wait(boost::bind(&A::fun, this, _1) (0) );应该可以工作,但会引发许多错误。正如这里所解释的boost.org/doc/libs/1_35_0/doc/html/boost_asio/tutorial/…
标签: c++ boost boost-asio