java NIO概述

NIO 是java4提供的新的API 用来解决传统io的问题
nio三个关键的概念

Channel 通道
Buffer 缓冲区
Selector 选择器

Channel

和传统IO的Stream差不多。传统的Stream是单向的(只能读或写),但是Channel是双向的,即可以读也可以写。

Buffer

NIO中所有的读和写都离不开Buffer。读和写都要先到Buffer里

Selector 最核心的东西

Selector的作用是轮询每个注册的Channel,一旦发现Channel有注册的事件发生,获取事件然后处理

比如:


image

用单线程处理一个Selector,然后通过Selector.select()方法来获取到达事件,在获取了到达事件之后,就可以逐个地对这些事件进行响应处理。

你可能感兴趣的:(java NIO概述)