Basis - I/O 模型

闷骚的程序员

概念理解

同步与异步

多个任务和事件发生时,一个事件的发生或执行是否会导致整个流程的暂时等待。

阻塞与非阻塞

当请求一个操作时,如果条件不满足,是会一直等待还是返回一个标志信息。

同步 I/O 与异步 I/O

数据拷贝阶段是由用户线程完成还是内核完成(必须要有操作系统的底层支持)。

阻塞 I/O 与非阻塞 I/O

在数据未就绪的情况下,是返回一个标志位还是一直等待。

I/O 模型

阻塞 I/O 模型

非阻塞 I/O 模型

多路复用 I/O 模型

Java NIO 属于这一种,使用 select() 去查询每个通道是否有到达事件,没有事件则阻塞。

信号驱动 I/O 模型

异步 I/O 模型

参考

文档信息

Search

    Table of Contents