我最近在 Windows 上意识到了这个叫做 IOCP 的东西,我开始搜索关于它的更多信息,但我找不到任何最新的东西(大多数例子都是在将近 5 年前的 codeproject 上)并且没有太多的指南或教程。任何人都可以以在线教程或示例项目(您编写并可以分享或其他开源项目)的形式推荐任何关于它的最新资源,甚至是一本关于它的书,因为如果它和听起来一样好,我打算使用它广泛,所以我会投资它。
谢谢你。
我最近在 Windows 上意识到了这个叫做 IOCP 的东西,我开始搜索关于它的更多信息,但我找不到任何最新的东西(大多数例子都是在将近 5 年前的 codeproject 上)并且没有太多的指南或教程。任何人都可以以在线教程或示例项目(您编写并可以分享或其他开源项目)的形式推荐任何关于它的最新资源,甚至是一本关于它的书,因为如果它和听起来一样好,我打算使用它广泛,所以我会投资它。
谢谢你。
如果您从网络编程的角度来看 IOCP,那么您可能还希望将Microsoft Windows 的网络编程添加到您的资源列表中。
早在 2002 年,当我在那里写关于 IOCP 的文章时,CodeProject 上有很多基本的 IOCP 教程,所以我采用了稍微不同的方法并编写了一些代码,希望这些代码可以作为一个简单的网络框架重用。这已经发展成为我销售的产品。可以在此处找到与原始 CodeProject 文章相关联的代码的最新版本:http ://www.serverframework.com/products---the-free-framework.html这些年来我已经对其进行了相当大的更改,但是原始代码仍然可以正常工作并提供良好的可扩展性,并且也许可以作为一个有用的工作示例来学习。
IOCP 是自黑暗时代以来一直存在于 Windows 中的一项功能,此后几年几乎没有变化。因此,5 年前的任何样本等在今天仍然可以很好地工作。
MSDN 有一些关于 IOCP 的文档:http: //msdn.microsoft.com/en-us/library/aa365198%28v=VS.85%29.aspx
Mark Russinovich 还写了一篇关于 IOCP 的精彩介绍:http: //sysinternals.d4rk4.ru/Information/IoCompletionPorts.html
Mark 还在必读的“ Windows Internals ”中对 Windows 的 IO 基础架构进行了更详尽的描述。
我还强烈推荐 Jeffery Richter 的“ Windows via C/C++ ”,这对于任何从事低级 Windows 编程的人来说也是必不可少的读物。
HTH。