NIO
  1. java NIO简介

Java NIO 简介 是从java1.4版本开始引入的一个新的IO AP可以替代标准java  IO API

NIO与原来的IO有同样的作用和目的,但是使用方式完全不同,NIO支持面向缓冲区的,基于通道的IO操作,NIO将以更加高效的方式进行文件的读与写操作。

SRE实战 互联网时代守护先锋,助力企业售后服务体系运筹帷幄!一键直达领取阿里云限量特价优惠。

2Java NIO IO的主要区别

IO

NIO

面向流

面向缓冲区

阻塞IO

非阻塞

选择器

传统IO

 NIO的初步入门 随笔 第1张

 

NIO 通道负责连接,缓冲区负责数据的传输。

 NIO的初步入门 随笔 第2张

             3.缓冲区(Buffer)和通道

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

简言之,channel负责传输,buffer负责存储。

缓冲区(buffer

一个用于特定基本数据类型的容器,有java.nio包定义的,所有缓冲区都是buffer抽象类的子类。

JavaNIO 中的Buffer主要用于与NIO通道进行交互,数据是从通道读入缓冲区,从缓冲区写入通道中的。

 

        4.文件通道

        5.NIO的非阻塞时式网络通信

选择器

SockerChannel ,ServerSockertChannel  ,DatagramChannel

          

         6.管道

         7.Java NIO2PathPathsFiles

 

下面是对NIO底层源码的讲解

 

 

扫码关注我们
微信号:SRE实战
拒绝背锅 运筹帷幄