Java I/O 基础

 

1、I/O基础入门

 

Java I/O 基础

 

2、Linux网络I/O模型简介

Java I/O 基础

 

2.1、阻塞I/O模型

Java I/O 基础

Java I/O 基础

2.2、非阻塞I/O模型

Java I/O 基础

Java I/O 基础

2.3、I/O复用模型

Java I/O 基础

Java I/O 基础

 

2.4、信号驱动I/O模型

Java I/O 基础

Java I/O 基础

 

2.5、异步I/O

Java I/O 基础

Java I/O 基础

 

3、I/O多路复用技术

Java I/O 基础

 

Java I/O 基础

(1)、支持一个进程打开的socket描述符(FD)不受限制(仅受限于操作系统的最大文件句柄数)

(2)、 I/O效率不会随着FD数目的增加而线性下降。因为epoll只对”活跃”的socket进行操作-这是因为在内核实现中epoll是根据每个fd上面的callback函数实现的,那么,只有”活跃”的socket才会主动的去调用callback函数,其他idle状态的socket则不会。

(3) 、使用mmap加速内核与用户空间的消息传递。

(4)、 epoll的API更加简单