将琴存诗
人生 可以不要那么 耀 ,只需要有 一个  平凡的梦想  足以 。—— loveincode -_^ RSS
Fork me on GitHub

Java NIO 学习总结 学习手册

  • Channels   通道 Channel 有点象流。 数据可以从Channel读到Buffer中,也可以从Buffer 写到Channel中。
  • Buffers  Buffer覆盖了你能通过IO发送的基本数据类型:byte, short, int, long, float, double 和 char
  • Selectors   Selector允许单线程处理多个 Channel。如果你的应用打开了多个连接(通道),但每个连接的流量都很低,使用Selector就会很方便。

Channels and Buffers(通道和缓冲区)

标准的IO基于字节流和字符流进行操作的,而NIO是基于通道(Channel)和缓冲区(Buffer)进行操作,数据总是从通道读取到缓冲区中,或者从缓冲区写入到通道中。

Selectors(选择器)

Java NIO引入了选择器的概念,选择器用于监听多个通道的事件(比如:连接打开,数据到达)。因此,单个的线程可以监听多个数据通道。

Non-blocking IO(非阻塞IO)

Java NIO可以让你非阻塞的使用IO,例如:当线程从通道读取数据到缓冲区时,线程还是可以进行其他事情。当数据被写入到缓冲区时,线程可以继续处理它。从缓冲区写入通道也类似。

github NIOdemo地址:https://github.com/loveincode/StudyTest/tree/master/src/NIO

学习手册

Java NIO 教程             6 Java NIO 通道之间的数据传输        11 Java NIO 非阻塞式服务器

Java NIO概述           7 Java NIO Selector                 12 Java NIO DataGramChannel

Java NIO Channel         8 Java NIO FileChannel           13 Java NIO Pipe

Java NIO Buffer          9 Java NIO SocketChannel           14 Java NIO 与IO

Java NIO Scatter / Gather        10 Java NIO ServerSocketChannel           15 Java NIO Path (待翻译)

 

16 Java NIO Files (待翻译)

17 Java NIO AsynchronousFileChannel (待翻译)

 原文 并发编程网(翻译):http://ifeve.com/java-nio-all/  源自 http://tutorials.jenkov.com/java-nio/index.html

JavaIO学习手册 : Java IO 学习总结 学习手册总结

posted @ 2017-08-30 12:09  loveincode  阅读(422)  评论(0编辑  收藏  举报
最简单即最美
有了信仰,自己要坚持努力 2017.07.09 21:34