2019年java中高级java面试题(十)java基础

1、BIO、NIO、AIO ?

BIO

 block(阻塞) IO,主要用于文件io和网络io

bio 以流的方式处理数据,bio用装饰者模式给我们提供了各种阻塞流供我们使用。

NIO

从 JDK1.4 开始,Java 提供了NIO ( non-blocking IO) ,NIO 以块的方式处理数据。NIO 主要有三大核心部分:Channel(通道)Buffer(缓冲区), Selector(选择器)

数据总是从通道读取到缓冲区中,或者从缓冲区写入到通道中。Selector(选择区)用于监听多个通
道的事件(比如:连接请求,数据到达等)

 AIO

JDK 7 引入了 Asynchronous I/O,在进行 I/O 编程中,常用到两种模式:Reactor
Proactor。Java 的 NIO 就是 Reactor

发布了61 篇原创文章 · 获赞 48 · 访问量 2万+

猜你喜欢

转载自blog.csdn.net/hzau_itdog/article/details/92620206