【网络IO】同步非阻塞IO
🧴【网络IO】同步非阻塞IO
2022-3-23
| 2023-10-28
0  |  0 分钟
type
status
date
slug
summary
tags
category
icon
password
Sub-item
Last edited time
Oct 28, 2023 10:39 AM
Parent item
领域
notion image
从图中可以看出,
  1. 当用户进程发出read操作时,如果kernel中的数据还没有准备好,那么它并不会block用户进程,而是立刻返回一个error。
  1. 从用户进程角度讲 ,它发起一个read操作后,并不需要等待,而是马上就得到了一个结果
  1. 用户进程判断结果是一个error时,它就知道数据还没有准备好,于是它可以再次发送read操作。
  1. 一旦kernel中的数据准备好了,并且又再次收到了用户进程的system call,那么它马上就将数据拷贝到了用户内存,然后返回。
💡
所以,用户进程其实是需要不断的主动询问kernel数据准备好了没有。
计算机基础
  • 高性能
  • 服务器
  • LInux
  • 【网络IO】同步IO【通信协议】JSON-RPC 2.0 规范
    目录