新乡市网站建设_网站建设公司_SSL证书_seo优化
2026/1/8 18:57:43 网站建设 项目流程

IO流:

  • 程序与外部设备(文件,内存,网络,外设)之间传输数据的抽象方式。
  1. 数据流向:输入流(InputStream)输出流(OutputStream)
  2. 数据单位:字节流(二进制数据),字符流(文本数据)

网络流:

  • 是IO流的具体应用场景,特指在网络通信(TCP/UDP)中,程序通过网络套接字(Socket)与远程主机之间传输数据的数据流,是跨主机的IO流。

同步IO与异步IO原理:

IO操作的完成过程分为两个核心阶段:

  1. 等待数据就绪:内核等待外部数据到达内核缓冲区。
  2. 数据拷贝:将内核缓冲区中的数据拷贝到用户进程的内核缓冲区中。

同步IO和异步IO的核心区别:在于用户进程是否需要等待这两个阶段完成。

同步IO:

用户进程发起IO操作后,必须等待IO的“等待就绪+数据拷贝”至少一个阶段完成,才能继续执行后续代码;数据拷贝阶段进程一定是阻塞的。

类型原理
阻塞IO(BIO)进程调用的时候,内核若数据未就绪->进程直接阻塞,知道数据就绪+拷贝完成,才继续执行
非阻塞IO(NIO)进程调用的时候,内核若数据未就绪->立即返回错误,进程可做其他事,然后轮询调用,知道数据就绪完毕+拷贝完成

异步IO:

用户进程发起IO操作后,无需等待任务阶段,直接返回并继续执行;内核会自动完成“等待数据就绪+拷贝完成”的全部工作,完成后通过回调函数/信号主动通知进程。

非阻塞IO(AIO)

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询