NIO--概述

NIO

Java NIO (New IO Non Blocking IO)是从Java1.4版本开始引入的一个新的IO API,可以代替标准的Java IO API。NIO与原来的IO有同样的作用和目的,但是使用的方式完全不同,NIO支持面向缓冲区的、基于通道的IO操作。NIO将以更加高效的方式进行文件的读写操作。

NIO与IO的区别

IO NIO
面向流(Stream Oriented) 面向缓冲区(Buffer oriented)
阻塞IO(Blocking IO) 非阻塞IO(Non Blocking IO)
(无) 选择器(Selecctors)

通道和缓冲区

Java NIO系统的核心在于:通道(Channel)和缓冲区(Buffer)。

  • 通道表示打开到IO设备(例如:文件、套接字)的连接。
  • 若需要使用NIO系统,需要获取用于连接IO设备的通道以及用于容纳数据的缓冲区。然后操作缓冲区,对数据进行处理。

简而言之,Channel负责传输,Buffer负责存储。

发布了750 篇原创文章 · 获赞 2115 · 访问量 26万+

猜你喜欢

转载自blog.csdn.net/cold___play/article/details/104309850
今日推荐