javaIO——BufferedReader效率测试实践
上一篇刚刚学习了 BufferedReader ,想着来验证一下 BufferedReader 的缓冲到底能带来多大的性能提升,于是拷贝了一个100M 左右的日志文件放到本地,测试一下使用 BufferedReader 和不使用的情况下,所耗费的时间差别。
上一篇 BufferedReader 学习篇地址:https://www.cnblogs.com/coding-one/p/11369726.html
1. 准备文件:

2. 编写测试代码:
package com.one.jdksrc.java.io; import java.io.*; /**
* @author haoya_Coding_one
* @version 1.0
* @create 2019/8/17 18:23
* @description TODO
*/
public class BufferedReaderTest { public static void main(String[] args) throws IOException {
char[] buff = new char[10000]; /*long start = System.currentTimeMillis();
try(BufferedReader bufferedReader = new BufferedReader(new FileReader("C:/Users/haoya_Coding_one/Desktop/catalina.out"))){
while (bufferedReader.read(buff, 0, 10000) >0){
System.out.println(buff);
}
}
System.out.println("使用缓冲,耗时:" + (System.currentTimeMillis()-start) + " ms");*/ long start = System.currentTimeMillis();
try(FileReader fileReader = new FileReader("C:/Users/haoya_Coding_one/Desktop/catalina.out")){
while (fileReader.read(buff, 0, 10000) >0){
System.out.println(buff);
}
}
System.out.println("不使用缓冲,耗时:" + (System.currentTimeMillis()-start) + " ms");
}
}
3. 测试结果
分别测试在每次读取 100/1000/10000个字符的情况下,所花费的时间。
每次读取 100 个字符:


每次读取 1000 个字符:


每次读取 10000 个字符:


结果是:并不能明显的看出 使用 BufferedReader 有什么效率提升。
不知道是不是文件太小呢?或者是本地文件流本身有什么特殊性,换成网络流会不会不一样?下次找个时间试试。
javaIO——BufferedReader效率测试实践的更多相关文章
- javaIO——BufferedReader
今天来学习一下 java.io.BufferedReader ,从命名可以看出,跟前面学习的 StringReader 和 CharArrayReader 有些不一样,这些都是按照数据源类型命名,Bu ...
- log2取整效率测试
RMQ问题中有个ST算法,当然还有个标准算法.LCA问题可以转化为带限制的RMQ(RMQ+-1)问题来解决.我们姑且认为这些问题的时间复杂度是查询$O(1)$的.但是,注意到对于RMQ(/+-1)问题 ...
- Docker与自动化测试及其测试实践
Docker 与自动化测试 对于重复枯燥的手动测试任务,可以考虑将其进行自动化改造.自动化的成本在于自动化程序的编写和维护,而收益在于节省了手动执行用例的时间.简而言之,如果收益大于成本,测试任务就有 ...
- Golang项目的测试实践
Golang项目的测试实践 最近有一个项目,链路涉及了4个服务.最核心的是一个配时服务.要如何对这个项目进行测试,保证输出质量,是最近思考和实践的重点.这篇就说下最近这个实践的过程总结. 测试金字塔 ...
- 携程酒店DevOps测试实践
作者简介 王幸福,携程酒店研发部高级测试经理,负责无线自动化测试相关工作.在测试框架和平台研发.移动测试.DevOps等领域有着丰富的经验. 如今很多大型互联网公司.创新型企业都在积极地进行DevOp ...
- NHibernate Demo 和 效率测试
本文关于NHibernate的Demo和效率测试,希望对大家有用. 1.先去官网下载Nhibernate 2.放入到项目中并建立Helper类 private static ISession _Ses ...
- 关于 pgsql 数据库json几个函数用法的效率测试
关于 pgsql 数据库json几个函数用法的效率测试 关于pgsql 几个操作符的效率测试比较1. json::->> 和 ->> 测试方法:单次运行100次,运行10个单次 ...
- 《高级软件测试》web测试实践--12月30日记录
考完数学,我们正式开始web测试实践的作业,今天,我们主要进行了方案的选择和人员的分工.任务计划和安排如上图所示. 任务进展:完成题目选择和人员分工: 遇到问题:暂无: 下一步任务:完成软件评测.用户 ...
- Python_线程、线程效率测试、数据隔离测试、主线程和子线程
0.进程中的概念 三状态:就绪.运行.阻塞 就绪(Ready):当进程已分配到除CPU以外的所有必要资源,只要获得处理机便可立即执行,这时的进程状态成为就绪状态. 执行/运行(Running)状态:当 ...
随机推荐
- Mysql触发器详解以及union的使用
---恢复内容开始--- Mysql触发器定义: 当一个表中有insert update delete事件发生,触发一个事件,执行一段代码.作用: 同步数据创建: create trigger 名称 ...
- oracle-sql脚本
select * from dba_users; create tablespace kyc_coo; create user kyc_coo identified by "123456&q ...
- kotlin使用中辍标记法调用函数
fun main(arg: Array<String>) { var str = "hello world" print(str div("l")) ...
- Python 数据库的Connection、Cursor两大对象
Python 数据库的Connection.Cursor两大对象 pymysql是Python中操作MySQL的模块,其使用方法和py2的MySQLdb几乎相同. Python 数据库图解流程 Con ...
- 5.性能测试工具比较:Jmeter和LR
性能测试工具较多,无法一一进行介绍,感兴趣者可自行搜索资料学习.需要说明的是工具使用方法和原理都大同小异,掌握一个,其他皆可快速上手. 下面就以服务端的性能测试工具为例,对市场上最常用,知名度较高,也 ...
- TortoiseSVN commit 停止工作
TortoiseSVN commit 便停止工作,详细原因是igc64.dll故障,该动态链接库与Intel HD Graphics Driver有关(即显卡驱动),由于重装系统后,进行了显卡驱动的更 ...
- Oracle查询显示CLOB的内容
select dbms_lob.substr(note) from table
- Windows下Tesseract-OCR的安装
可以去Github查看tesseract-ocr的信息:https://github.com/tesseract-ocr/tesseract 在写这篇随笔的时候(2018年8月21日)最新版本是3.0 ...
- SecureCRT 添加Mac Localhost
1.启动sshd服务: sudo launchctl load -w /System/Library/LaunchDaemons/ssh.plist 停止sshd服务的方法: sudo launchc ...
- unity 读取灰度图生成按高程分层设色地形模型
准备灰度图 1.高程按比例对应hue色相(hsv)生成mesh效果 o.color = float4(hsv2rgb(float3(v.vertex.y/100.0, 0.5, 0.75)), 1.0 ...