美文网首页
java IO基础

java IO基础

作者: 降龙_伏虎 | 来源:发表于2020-01-09 21:06 被阅读0次

1.IO即BIO

  • Input Output 以内存角度定义
    向内存中写数据Input对应方法read()
    从内存中读取数据Output对应方法write()
image.png

2.阻塞(Block)与非阻塞(Non-Block)的区别

  • 阻塞/非阻塞参照物为IO而非其它
  • 阻塞/非阻塞一般存在于Input读取操作中

BIO

  • 单个通过,出一个进一个


    image.png

NIO

  • 多个同时通过,Buffer对数据进行缓冲.通过轮询消费掉缓冲区中的数据
image.png

3.同步(Synchronization)和异步(Asynchronous)的区别

  • 同步
    一个'流程'开始后必须完成后才可进行下一个'流程'
    线性顺序执行

    image.png
  • 异步
    一个 流程 开始后不管是否结束.立即开启下一 流程

    image.png
  • 生活中的例子
    同步投篮球:一个篮球投出后必须看到篮球是否投中后,才开始下一次投篮
    异步投篮球:一个篮球投出后立即投出下一个不必等到第一次投篮结果确定

4.BIO、 NIO、AIO的区别

名称 是否同步 是否阻塞
BIO 同步 阻塞
NIO 同步 阻塞
AIO 异步 非阻塞
  • JDK1.4以前使用的都是BIO
  • JDK1.4以后NIO出现,IO性能大幅度提升Netty默认使用NIO
  • JDK1.7以后出现AIO(NIO2)由于是事件驱动,操作系统的性能觉定IO的性能

相关文章

  • Java NIO

    一、基础概念 Java NIO(New IO)是一个可以替代标准Java IO API的IO API(从Java ...

  • 一文带你精通Java I/O流,分分钟吊打面试官!

    Java IO概述 IO就是输入/输出。Java IO类库基于抽象基础类InputStream和OutputStr...

  • java IO入门笔记

    1.java IO流的概念,分类,类图 1.1. java IO 流的概念 java的io是实现输入和输出的基础,...

  • Java IO详解

    1 Java IO流的概念,分类 1.1 Java IO流的概念 java的IO是实现输入和输出的基础,可以方便的...

  • 初步接触 Java Net 网络编程

    本文目的是大概了解 Java 网络编程体系,需要一点点 Java IO 基础,推荐教程 系统学习 Java IO。...

  • 系统学习 Java IO (三)----File

    目录:系统学习 Java IO---- 目录,概览 Java IO API 中的 File 类可以访问基础文件系统...

  • java基础——IO

    I/O作为作为人机交互的核心问题,很多web应用系统的瓶颈都是I/O瓶颈。本文主要总结java的I/O类库基本架构...

  • Java IO 基础

    一、File 类 java.io.File 类:文件和目录路径名的抽象表示形式。通过File对象可以访问文件的属性...

  • java IO基础

    1.IO即BIO Input Output 以内存角度定义向内存中写数据Input对应方法read()从内存中读取...

  • Java基础-IO

    概念 IO指的是输入输出,主要是指文件的IO和网络的IO。 对于java程序来说,分成BIO,NIO,AIO。 各...

网友评论

      本文标题:java IO基础

      本文链接:https://www.haomeiwen.com/subject/zmkuactx.html