现在用一个库,对方提供的异步接口是基于 std::future的,无法理解。
以前使用基于 callback 函数的异步接口,我的调用现成调用完异步接口后,该干嘛干嘛,结果来了回调函数自动调用。
现在基于 future 的接口,返回一个 future, 我岂不是还要单独创建要给线程定时检测 future 的状态?
没有理解这个 future 的好处在哪里? 该咋用?
以前:
void callback(int send_size)
{
do_something(send_size);
}
int main()
{
connection c;
for (int i =0; i < 100; ++i)
c.asyn_send(data);
sleep(100000);
return 0;
}
在上面代码里,我只要在主线程里不停地发数据,然后在 calback 里自动得到发送的结果。
现在 如果 asyn_send 直接返回一个 future 的话,我是不是还要单独弄个线程定时去轮询?
--
FROM 218.76.62.*