C++ Asio调用带有回调的用户定义函数

C++ Asio调用带有回调的用户定义函数,c++,asynchronous,boost,boost-asio,C++,Asynchronous,Boost,Boost Asio,使用Boost.Asio如何通过调用类似Boost.Asio的标准异步调用的回调来异步调用用户定义函数 比如: boost::asio::async_write(..., WriteHandler); 但使用用户功能: async_call(UserFunction, ..., UserCompletionHandler); 它将调用UserFunction,并在完成调用后调用UserCompletionHandler 我可以使用deadline\u timers实现async\u调用,但是

使用Boost.Asio如何通过调用类似Boost.Asio的标准异步调用的回调来异步调用用户定义函数

比如:

boost::asio::async_write(..., WriteHandler);
但使用用户功能:

async_call(UserFunction, ..., UserCompletionHandler);
它将调用
UserFunction
,并在完成调用后调用
UserCompletionHandler


我可以使用
deadline\u timer
s实现
async\u调用
,但是有没有一种方法可以在没有它们的情况下实现它?

您可以使用该方法将异步调用排队。这就是你想要的吗?@rhashimoto是的,但我想知道什么时候能完成。在发布的调用中简单地调用callback将阻塞队列…为什么不发布一个lambda来调用
UserFunction
,然后调用
UserCompletionHandler
(或者编写一个方便的函数来实现这一点)?@rhashimoto我会尝试。。。