当前位置:七道奇文章资讯编程技术Java编程
日期:2011-03-22 16:15:00  来源:本站整理

Java程序用缓冲IO来提高性能[Java编程]

赞助商链接



  本文“Java程序用缓冲IO来提高性能[Java编程]”是由七道奇为您精心收集,来源于网络转载,文章版权归文章作者所有,本站不对其观点以及内容做任何评价,请读者自行判断,以下是其具体内容:

Java 输入/输出(IO)的性能可以利用尺度的缓冲类晋升,就像操作系统通过缓冲恳求提高它的速度一样.比方,假如一段代码要求从磁盘上读取数据,它会试图读取内存中已有的数据;假如代码但愿向磁盘写一些东西,它大概在完成写操作前将输出在内存中存放一段时间以等候更多的数据.

Java的IO系统中,将一个字符写入内存比写到磁盘上快得多,比方:

// 这段代码会抛出 IOException
Writer writer = new FileWriter( new File( "file.txt" ) );
for(int i=0; i〈1000; i++) {
writer.write(""+i);
writer.write(" ");
}
writer.close( );

在这个典范代码中,FileWriter一次输出一个数字,在Apple Powerbook 上丈量损耗的时间,第一次是180毫秒,今后是90毫秒,这个差别大概是JVM的当即(just-in-time)编译招致的.

给这段代码增添缓冲功效就是在FileWriter上成立一个BufferedWriter对象.

//这段代码会抛出IOException
Writer writer = new BufferedWriter(new FileWriter(
new File( "file.txt" )
) );
for(int i=0; i〈1000; i++) {
writer.write(""+i);
writer.write(" ");
}
writer.close( );

目前BufferedWriter会决意以什么频率向FileWriter发送写调用.可以利用flush( )办法强迫发出写调用.增添了BufferedWriter后,代码的运行时间是63毫秒.假如是有很多小量的输出,那么BufferedWriter在缺省条件下的性能晋升是非常明显的.

除了BufferedWriter外,BufferedOutputStream也具有相同的品质,关于输入就是BufferedReader和BufferedInputStream.

需求注意的是缓冲类不光是在文件系统上起作用,任何的Reader/Writer都能举行缓冲以提高字符输入/输出的速度,一样任何OutputStream/InputStream都能举行缓冲以提高字节IO的速度.


  以上是“Java程序用缓冲IO来提高性能[Java编程]”的内容,如果你对以上该文章内容感兴趣,你可以看看七道奇为您推荐以下文章:
  • 利用Javascript实现网页水印(非图片水印)
  • Java开辟环境的搭建
  • Ubuntu java安装与配置
  • 办理Ubuntu 10.04 Firefox3.6 Java浏览器插件不工作的问
  • Ubuntu重装后Java环境的设置
  • Sun Java进入Ubuntu 10.10软件中央
  • Ubuntu 10.10配置Java开辟环境
  • 在Ubuntu 10.10中配置Java环境变量的办法
  • Ubuntu下Java环境的搭建
  • Ubuntu 10.04 下安装 Java, JRE
  • Ubuntu 10.04下的搭建SUN JAVA开辟环境
  • Ubuntu 12.04安装java7
  • 本文地址: 与您的QQ/BBS好友分享!
    • 好的评价 如果您觉得此文章好,就请您
        0%(0)
    • 差的评价 如果您觉得此文章差,就请您
        0%(0)

    文章评论评论内容只代表网友观点,与本站立场无关!

       评论摘要(共 0 条,得分 0 分,平均 0 分) 查看完整评论
    Copyright © 2020-2022 www.xiamiku.com. All Rights Reserved .