boost asio async_read怎么设置超时返回呢? 不知道有没熟悉boost asio的,用async_read投递一个读请求,这个函数是要等读到指定长度的数据或者出错才返回,有没有办法设置一个参数让它超时返回?因为最近遇到一个网络环境很奇葩,好像async_read之后偶尔会一直不返回,很多其它用户都不会出现过 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 说错了,应该是async_read之后回调函数不调用,对端是发数据了的,感觉是不是TCP都丢包了,而且出现这种情况后网卡就ping不通了 回调函数好像必须调用,出错了也得调用,除非你stop io_service。如果要提供这个功能,必须从io_service上下手,即提供一个取消异步调用的接口,这个接口并没有,而且就算提供了,怎么知道要取消哪一个异步调用呢?因为异步调用并没有返回一个id。实现还有一个难点,对于已经完成但还没有调用回调函数的异步调用,不好取消。至少asio未实现这样的功能,看看它的timer就知道了,timer虽然可以取消,但不保证取消之后,回调函数一定不回调。 我不是要取消回调,是让它到指定时间还不调用就立即返回并调用我的回调,你说的相反了,因为我现在担心对端一直不发数据或者数据已经丢失连接又没断开,导致我这里死等。 boost 的定时器可以解决? 只要找不到timed_async_read之类的函数,应该就不行了。 我不是要取消回调,是让它到指定时间还不调用就立即返回并调用我的回调,你说的相反了,因为我现在担心对端一直不发数据或者数据已经丢失连接又没断开,导致我这里死等。 boost 的定时器可以解决?嗯,我用定时器dealine_timer解决但是又遇到点古怪问题 ATL控件设置背景透明 写了一个EXE,此EXE不创建任何窗口,请问怎么得到此EXE的进程ID呢,即PID AVI文件操作的问题 关于动态链接的动态库中一个类的全局实例的构造函数和析构函数何时被调用的问题 请高手讲一下VC++的字符串操作? 对dll存放的位置有什么要求? 线程高手请进 How to create check box style image in listview's subitems? 谁有详细讲解CListCtrl的资料呀!!!!! mfc 串口通信使用MSCOMM控件,如何实现上位机与下位机的通信啊? 简单的不能再简单的问题 文件换名字//是什么sdk函数????
如果要提供这个功能,必须从io_service上下手,即提供一个取消异步调用的接口,这个接口并没有,而且就算提供了,怎么知道要取消哪一个异步调用呢?因为异步调用并没有返回一个id。
实现还有一个难点,对于已经完成但还没有调用回调函数的异步调用,不好取消。至少asio未实现这样的功能,看看它的timer就知道了,timer虽然可以取消,但不保证取消之后,回调函数一定不回调。
boost 的定时器可以解决?嗯,我用定时器dealine_timer解决但是又遇到点古怪问题