【问题标题】:What do I need to know in order to undersrtand I/O Completion Ports?为了理解 I/O 完成端口,我需要了解什么?
【发布时间】:2015-04-22 10:25:13
【问题描述】:

对不起这个愚蠢的问题:-)

我发现处理数百(甚至数千)个套接字连接的最佳方法是使用 I/O 完成端口,但我很难理解本主题的教程。我的问题是在真正理解 I/O 完成端口之前我应该​​先理解哪些主题?我唯一能想到的主题是线程池,还有什么?

【问题讨论】:

  • 真的没有什么可以说让你明白的。我想有人解释它会有所帮助。至于那个,你用的是什么语言?
  • @Evan Carslake 我的意思是在真正开始学习这个主题之前我应该​​知道哪些先决条件。我正在使用 C++。

标签: c++ multithreading sockets io


【解决方案1】:

我想说你需要了解:

  1. 传统的 poll/readiness 模型如何工作(这本身并不适用于 IOCP,这是完全不同的,但由于绝大多数套接字使用前者执行 I/O,区分前者的语义,特别是避免语义是有用的)。

  2. 为什么 IOCP 比轮询模型更好;它有什么不同,它带来了什么

  3. 所有权的概念。 IOCP 依赖于它可以在给定操作的整个持续时间内拥有内存这一事实。

  4. 排队或挂起的 I/O 操作,以及异步处理队列

  5. 回调

【讨论】:

    猜你喜欢
    • 2016-02-14
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-02-17
    • 2013-01-04
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多