Java NIO 系列教程

来源:互联网 发布:毛衣品牌 知乎 编辑:程序博客网 时间:2024/06/06 01:02

Java NIO 系列教程

原文地址 作者:Jakob Jenkov   译者:郭蕾    校对:方腾飞

Java NIO(New IO)是一个可以替代标准Java IO API的IO API(从Java 1.4开始),Java NIO提供了与标准IO不同的IO工作方式。

Java NIO: Channels and Buffers(通道和缓冲区)

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

Java NIO: Non-blocking IO(非阻塞IO)

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

Java NIO: Selectors(选择器)

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

  1. Java NIO 教程
  2. Java NIO概述
  3. Java NIO Channel
  4. Java NIO Buffer
  5. Java NIO Scatter / Gather
  6. Java NIO 通道之间的数据传输
  7. Java NIO Selector
  8. Java NIO FileChannel
  9. Java NIO SocketChannel
  10. Java NIO ServerSocketChannel
  11. Java NIO 非阻塞式服务器
  12. Java NIO DataGramChannel
  13. Java NIO Pipe
  14. Java NIO 与IO
  15. Java NIO Path (待翻译)
  16. Java NIO Files (待翻译)
  17. Java NIO AsynchronousFileChannel (待翻译)

原创文章,转载请注明: 转载自并发编程网 – ifeve.com本文链接地址: Java NIO 系列教程

55
  • About 
  • Latest Posts

郭蕾

并发编程网站长,InfoQ技术编辑。个人博客:http://guolei.us
Favorite添加本文到我的收藏
  • 153,595 人阅读
  • 17 条评论
  • 发表评论
  • RSS订阅评论
  • Trackback 关闭
  • 评论 (17)
    • airu
    • 2013/06/04 3:00下午
    • 登录以回复 
    • 引用

    先领2,3,4吧。

    • 郭蕾
    • 2013/06/04 3:06下午
    • 登录以回复 
    • 引用

    那我就5,6,7。

    • IdleMind
    • 2013/06/05 12:33上午
    • 登录以回复 
    • 引用

    我想领取一下8,是谁在批准

      • 郭蕾
      • 2013/06/05 8:57上午
      • 登录以回复 
      • 引用

      已更新,翻译流程请看http://ifeve.com/contribute/

    • A黄忠
    • 2013/06/05 7:04下午
    • 登录以回复 
    • 引用

    我已经领取 12 Java NIO Pipe

      • 夕水溪下
      • 2013/06/06 8:55上午
      • 登录以回复 
      • 引用

      好。

    • 郑玉婷
    • 2013/06/06 3:19上午
    • 登录以回复 
    • 引用

    10让我领吧。感觉跟9是相连的。

      • 夕水溪下
      • 2013/06/06 8:55上午
      • 登录以回复 
      • 引用

      好的,小布丁。

    • 浪迹v
    • 2013/06/06 5:48下午
    • 登录以回复 
    • 引用

    7没人领??

      • 夕水溪下
      • 2013/06/06 6:57下午
      • 登录以回复 
      • 引用

      是的,你翻译?

        • 浪迹v
        • 2013/06/06 7:31下午
        • 登录以回复 
        • 引用

        恩,我翻译吧

    • 郑玉婷
    • 2013/06/06 11:54下午
    • 登录以回复 
    • 引用

    就剩11了,我领了吧。 :)

      • 郭蕾
      • 2013/06/07 9:34上午
      • 登录以回复 
      • 引用

      好的

    • 郝 晓亮
    • 2014/01/15 10:47上午
    • 登录以回复 
    • 引用

    系列不错,已读。

    • 小明
    • 2014/07/07 10:19上午
    • 登录以回复 
    • 引用

    原文 Java NIO: Non-blocking IO
    这个Non-blocking IO似乎应该译为非阻塞IO,
    异步IO和非阻塞还是有区别的,具体可参看《Unix 网络编程》
    java 7引入了异步IO

      • 郭蕾
      • 2014/07/10 2:15下午
      • 登录以回复 
      • 引用

      谢谢提醒,我们翻译的时候作者写的是异步IO,后来改了。其实正确的也应该是非阻塞IO

    • peng
    • 2016/02/24 1:02上午
    • 登录以回复 
    • 引用

    我觉得可以写写jdk1.7新出的 more new io(nio.2)

0 0