• bufferedinputstream的使用


    BufferedInputStream是一个带有缓冲区的输入流,通常使用它可以提高我们的读取效率,现在我们看下BufferedInputStream的实现原理: 
    BufferedInputStream内部有一个缓冲区,默认大小为8M,每次调用read方法的时候,它首先尝试从缓冲区里读取数据,若读取失败(缓冲区无可读数据),则选择从物理数据源(譬如文件)读取新数据(这里会尝试尽可能读取多的字节)放入到缓冲区中,最后再将缓冲区中的内容部分或全部返回给用户.由于从缓冲区里读取数据远比直接从物理数据源(譬如文件)读取速度快,所以BufferedInputStream的效率很高! 
    ******************************************************
    不带缓冲的操作,每读一个字节就要写入一个字节,由于涉及磁盘的IO操作相比内存的操作要慢很多,所以不带缓冲的流效率很低。带缓冲的流,可以一次读很多字节,但不向磁盘中写入,只是先放到内存里。等凑够了缓冲区大小的时候一次性写入磁盘,这种方式可以减少磁盘操作次数,速度就会提高很多!这就是inputstream与bufferedinputstream的区别
  • 相关阅读:
    HDU 5795
    HDU5783
    HDU 5791
    VK Cup 2016
    Codeforces Round #357 (Div. 2)
    Educational Codeforces Round 15
    HDU5724
    博弈学习 3
    Spring的多配置文件加载
    spring 核心技术
  • 原文地址:https://www.cnblogs.com/edwardru/p/5933509.html
Copyright © 2020-2023  润新知