MLDN
课程咨询[孔老师]QQ 1031143579孔老师QQ课程咨询留言 课程咨询[徐老师 ]QQ 945313230
徐老师QQ课程咨询留言
课程咨询[刘老师 ]QQ 514543793
刘老师QQ课程咨询留言
java培训
北京java培训
IT电子教育门户 高端JAVA培训 -=> 资源中心 -=> JAVA SE技术专区 -=> JAVA文件操作 -=> 正文

Java程序用缓冲IO来提高系统性能

 发布日期:2007-11-27 8:31:00 发布者:[IT电子教育门户]   评论:[]  浏览:

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视频教程
JAVA核心_75对象序列化练习
 JAVA核心_75对象序列化..
JAVA核心_74对象序列化
 JAVA核心_74对象序列化..
JAVA核心_73字符编码
 JAVA核心_73字符编码 ..
JAVA核心_72Scanner
 JAVA核心_72Scann..
JAVA核心_71 IO练习 二
 JAVA核心_71 IO练习..
相关文章 推荐文章
关于Java IO流学习总结[3.4]
Java文件操作增强工具[2.18]
JAVA文件操作[10.31]
java中四种操作xml方式的比..[1.7]
在JAVA文件中获取该项目的相对..[11.2]
关于Java IO流学习总结
Java文件操作增强工具
JAVA文件操作
java中四种操作xml方式的比较
Java程序用缓冲IO来提高系统性能
热门文章
一句代码完成对文本文件读取和写入
JAVA中文件操作大全
Java基于Socket实现文件传输示..
在JAVA文件中获取该项目的相对路径
关于Java IO流学习总结
生成一个java编制的可执行文件
Java数字签名
如何将JAVA生成可执行文件?
利用JAVA操作EXCEL文件
Java文件操作详解
今日更新
关于Java IO流学习总结
Java文件操作增强工具
JAVA文件操作
java中四种操作xml方式的比较
Java程序用缓冲IO来提高系统性能
在JAVA文件中获取该项目的相对路径
使用JAVA语言来更新XML文档的常用..
利用Java控制EXCEL实例详解
Java基于Socket实现文件传输示..
为Java程序中添加播放MIDI音乐功..
JAVA招聘网
 评一评
正在读取…
  姓名:
  评论:
    
【注】 发表评论必需遵守以下条例: !!!
  • 尊重网上道德,遵守中华人民共和国的各项有关法律法规
  • 承担一切因您的行为而直接或间接导致的民事或刑事法律责任
  • 本站管理人员有权保留或删除其管辖留言中的任意内容
  • 本站有权在网站内转载或引用您的评论
  • 参与本评论即表明您已经阅读并接受上述条款
关于我们 | 商务合作 | 招聘信息 | 客服中心 | 服务条款 | 免责声明 | 网站导航 QQ留言
Copyright 2009 魔乐培训MLDN.CN all rights reserved 版权所有 京ICP备07008611号