zoukankan      html  css  js  c++  java
  • 同步与异步

      在处理IO的时候阻塞与非阻塞都是同步IO,只有使用了特殊的API才是异步IO。

           

    select、poll、epoll都是同步。IO多路复用又叫事件驱动。

    信号驱动方式的IO也是同步的,信号只是异步通知机制,真正执行IO操作还是同步的(UNP的说法)。

    在IO操作时,事件驱动和信号驱动差不多一个概念。

    5种IO模型:

      1、阻塞式IO模型

      2、非阻塞式IO模型

      3、IO复用模型

      4、信号驱动式IO模型

      5、异步IO模型(调用特殊API,Linux中为aio)

    前4种都是同步IO模型,第5种是异步IO模型。because the actual I/O operation (recvfrom) blocks the process.这里说的阻塞应该是说需要进程自己去读/写数据,读写的时候进程是停在这个“读写点”的,而异步IO,不需要进程自己来读,内核帮忙拷贝到用户空间,进程直接用就行,也就不会停在“读写点”上。

      只要是应用主动调用读写IO的模型都是同步IO模型。

  • 相关阅读:
    文件路径与操作系统
    试验10
    shiyan9
    sql
    shiyan8
    iostream
    shiyan7
    CDMA
    试验6
    试验5
  • 原文地址:https://www.cnblogs.com/wanmeishenghuo/p/9314800.html
Copyright © 2011-2022 走看看