240 发简信
IP属地:广东
  • 180
    yetx ·

    简单总结一下:
    同步:主动菜是否准备好(光等或轮询)
    异步:服务员在菜准备好的时候通知你
    阻塞:没准备好之前什么事都不干
    非阻塞:没准备好之前干其他事

    楼主举的例子所说的同步跟阻塞一般是针对数据准备阶段的。
    所以最后的总结图对应的是:
    阻塞I/O:同步阻塞
    非阻塞I/O:同步(轮询)非阻塞
    I/O多路复用:同步阻塞(不过可以同时监听多个socket状态,效率高了)
    信号驱动I/O:异步非阻塞
    异步I/O:真正意义上的异步非阻塞(上面的都只是数据准备阶段,这个是数据准备和数据处理阶段)

  • 120
    聊聊Linux 五种IO模型

    上一篇《聊聊同步、异步、阻塞与非阻塞》[https://www.jianshu.com/p/aed6067eeac9]已经通俗的讲解了,要理解同步、异步、阻塞与非阻塞重要的两...

  • Linux的基本知识与命令

    chmod chown cd mv 剪切 可用来重命名 不用-r cp -r 复制 需要-r -a可以使得复制的其它东西都一样,如时间 rm -rf 删除 -r表示目录...

  • 二叉树创建与遍历

    节点定义: 树的定义: 以下是各种方法的实现: 首先是通过一个字符串先序遍历创建一颗树 先序遍历、中序遍历、后序遍历的递归版本,此处无传如visit函数,只是访问节点的数据并...

  • keydown keypress keyup oninput 小总结

    keydown keypress keyup oninput 小总结 事件触发顺序:keydown - > keypress - > oninput -> keyup 在co...