如何将IOCP使用在HTTP下载
怎么将IOCP使用在HTTP下载
首先,我有一套比较完整的异步I/O读取本地文件的代码,使用的就是IOCP,继承的 OVERLAPPED;
读取本地文件用的ReadFile函数,读取一段buffer之后,会进行GetQueuedCompletionStatus(m_hIoCompletePort, &dwNumBytes,
&completionKey, &pOverLapped, INFINITE);
现在想将ReadFile改成HTTP下载。
求指教,在HTTP下载完buffer之后该怎么做才能使用GetQueuedCompletionStatus函数??
------解决方案--------------------
你那代码是windows核心编程里面的?开起来很熟悉的样子
------解决方案--------------------
LPFN_TRANSMITFILE TransmitFile; ?
------解决方案--------------------
HTTP 下载后保存本地文件,然后用IOCP模块去读就行了
------解决方案--------------------
楼主是想利用iocp传输数据,还是只通知上层?
看楼主的描述好像是仅通知...?
------解决方案--------------------
先看看例子:http://www.codeproject.com/Articles/10330/A-simple-IOCP-Server-Client-Class
------解决方案--------------------
iocp没玩过,值看过简单例子,没实战经验
楼主的用libcurl我觉得很好应付。
支持http协议
------解决方案--------------------
额...iocp我也在学~
首先,我有一套比较完整的异步I/O读取本地文件的代码,使用的就是IOCP,继承的 OVERLAPPED;
读取本地文件用的ReadFile函数,读取一段buffer之后,会进行GetQueuedCompletionStatus(m_hIoCompletePort, &dwNumBytes,
&completionKey, &pOverLapped, INFINITE);
现在想将ReadFile改成HTTP下载。
求指教,在HTTP下载完buffer之后该怎么做才能使用GetQueuedCompletionStatus函数??
------解决方案--------------------
你那代码是windows核心编程里面的?开起来很熟悉的样子
------解决方案--------------------
LPFN_TRANSMITFILE TransmitFile; ?
------解决方案--------------------
HTTP 下载后保存本地文件,然后用IOCP模块去读就行了
------解决方案--------------------
楼主是想利用iocp传输数据,还是只通知上层?
看楼主的描述好像是仅通知...?
------解决方案--------------------
先看看例子:http://www.codeproject.com/Articles/10330/A-simple-IOCP-Server-Client-Class
------解决方案--------------------
iocp没玩过,值看过简单例子,没实战经验
楼主的用libcurl我觉得很好应付。
支持http协议
------解决方案--------------------
额...iocp我也在学~