【发布时间】:2013-06-23 16:14:48
【问题描述】:
我创建了一系列与 Libcurl Multi 通信并通过 ASIO 和 Boost 异步下载文件的函数。
显然,当我调用 io_service.run 时,它会在运行时阻塞我的主线程。我试图让它非阻塞,但我的应用程序崩溃了。
我想知道在后台以非阻塞方式运行它并让它在完成时调用回调函数的最简单和最好的方法是什么(就像你可以在 javascript 中那样做)。
所以我可以走了:
Runthisinthebackground( thingtodo, callback);
它将运行 thingtodo 并将结果返回给回调。但有一件事必须使用诸如 boost 之类的库,它可以在没有 C++ 11 的设备上运行作为在 Android 和 iOS 上运行的移动应用程序
【问题讨论】:
-
FWIW,iOS 和 Android 工具链都支持 C++11。
-
哦,我不知道 :) 感谢您的提醒 :) 这让事情变得更容易 :)
标签: c++ boost boost-asio libcurl nonblocking