I/O事件

作者: wiseAaron | 来源:发表于2016-11-14 14:44 被阅读69次

下列情况socket可读:

  1. socket内核接收缓存区中的字节数大于或者等于其低水位标记SO_RCVLOWAT。此时我们可以无阻塞地读该socket,并且读操作将返回的字节数大于0。
  2. socket通信的对方关闭连接。此时对该socket的读操作将返回0。
  3. 监听socket上有新的连接请求。
  4. socket上有未处理的错误。此时我们可以使用getsockopt来读取和清除错误

下列情况socket可写:

  1. socket内核发送缓冲区中的可用字节数大于或者等于其低水位标记SO_SNDLOWAT。
  2. socket的写操作被关闭。对写操作被关闭的socket执行写操作将处罚一个SIGPIPE信号。
  3. socket使用非阻塞connect连接成功或者失败(超时)之后。
  4. socket上有未处理的错误。此时我们可以使用getsockopt来读取和清除该错误。

相关文章

  • 五种I/O模型(转自园博园)

    .1 五种I/O模型 1)阻塞I/O 2)非阻塞I/O 3)I/O复用 4)事件(信号)驱动I/O 5)异步I/...

  • I/O事件

    下列情况socket可读: socket内核接收缓存区中的字节数大于或者等于其低水位标记SO_RCVLOWAT。此...

  • Lesson03

    异步式I/O与事件紧密结合 同步式I/O与异步式I/O的区别

  • ChannelHandler 驱动事件处理器

    Netty 是基于事件驱动的,可以理解为当Channel 进行I/O 操作是会产生对应的I/O 事件,这些事件就是...

  • IO多路复用

    I/O 多路复用 多路I/O复用模型是利用 select、poll、epoll 可以同时监察多个流的 I/O 事件...

  • 如何理解非阻塞I/O(详解)

    node有三大特征:单线程、非阻塞I/O,事件驱动 非阻塞I/O 非阻塞 I/O,也叫异步 I/O,显然对应的就是...

  • 深入浅出Node.js_异步编程

    Node 的特点:事件驱动、非阻塞I/O 异步I/O; 事件(轻量级、松耦合、只关注事务点)与回调函数; 单线程:...

  • Node 简介

    Node的特点 Node的特点有:异步I/O、事件与回调函数、单线程、跨平台 异步I/O 在Node中,异步I/O...

  • (6)Java NIO浅析(未完)

    NIO同步非阻塞的I/O模型,多路复用基础 对比常见I/O模型,NIO怎么利用事件模型处理I/O,解决线程池瓶颈处...

  • nodejs是什么

    nodejs是什么 nodejs是js runtime使用事件驱动 和 非阻塞I/O 模型 非阻塞I/O 阻塞:...

网友评论

      本文标题:I/O事件

      本文链接:https://www.haomeiwen.com/subject/wwbcpttx.html