社区
Java SE
帖子详情
BufferedInoutStreamAndBufferedOutputStream
青灰色的墙
2017-11-08 01:51:11
缓冲输入输出流的工作机理:
缓冲输入流就是就是将数据从硬盘中数据缓存在内存中,然后缓冲输入流在内存中对数据进行读写,节点流就是一次一次的在硬盘中读取效率低,使用缓冲输出流的时候,会在从内存中读取数据,然后写入硬盘,flush的作用就是将使用输入流从硬盘读取到内存中的数据一次性写完
[/size]
指点一下这样总结对吗?
...全文
149
2
打赏
收藏
BufferedInoutStreamAndBufferedOutputStream
缓冲输入输出流的工作机理: 缓冲输入流就是就是将数据从硬盘中数据缓存在内存中,然后缓冲输入流在内存中对数据进行读写,节点流就是一次一次的在硬盘中读取效率低,使用缓冲输出流的时候,会在从内存中读取数据,然后写入硬盘,flush的作用就是将使用输入流从硬盘读取到内存中的数据一次性写完[/size] 指点一下这样总结对吗?
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
2 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
捏造的信仰
2017-11-09
打赏
举报
回复
首先楼主看看官方文档: https://docs.oracle.com/javase/7/docs/api/java/io/BufferedInputStream.html https://docs.oracle.com/javase/7/docs/api/java/io/BufferedOutputStream.html BufferedInputStream,顾名思义就是在读取 InputStream 的过程中加上了一个缓冲区,这么做的目的是为了支持 mark() 和 reset() 方法。 BufferedOutputStream,在向 OutputStream 写入的过程中加上了一个缓冲区,这么做的目的是为了避免原 OutputStream 可能产生的阻塞而降低写入效率。因为这个类的 write() 方法不保证立刻将内容输出到原 OutputStream,因此如果用户有这个需要,就要调用 flush() 方法。
kampoo
2017-11-09
打赏
举报
回复
总结的没问题,Buffered...显式缓冲数据,还提供了适合缓冲存取的方法例如 #readLine / #writeLine 等。需要注意的是使用了BufferedOutputStream时,如果强行中断程序,可能造成数据没写入磁盘在内存中消失了。但从性能上跟无“显式”缓存的流区别不算大,因为现在无论磁盘本身 还是 操作系统,都是自带缓存的。如果事先能确定缓存的大小,比如需要缓存100MB,而且也跟程序逻辑相关,这个性能还是能明显提升的。
基于Q-learning算法在能源市场中实现效益最大化研究(Matlab代码实现)
基于Q-learning算法在能源市场中实现效益最大化研究(Matlab代码实现)
基于PSO-BP神经网络的风电功率预测研究(Matlab代码实现)
基于PSO-BP神经网络的风电功率预测研究(Matlab代码实现)
物联网4G DTU远程单路控制器
由四川芯波智创物联技术有限公司自主研发芯波智创物联网硬件一:边缘计算4G远程单路IO口控制器。亮点一:适合于低成本四基远程单路控制,亮点二:可定制边缘计算本地协议重组,对接各个物联网云平台,亮点三:可远程快速二次开发,具备双通道MQTT。欢迎合作咨询!
基于PID优化和矢量控制装置的四旋翼无人机(Matlab&Simulink实现)
基于PID优化和矢量控制装置的四旋翼无人机(Matlab&Simulink实现)
HTML的自我学习笔记,用于备份
HTML的自我学习笔记,用于备份
Java SE
62,628
社区成员
307,259
社区内容
发帖
与我相关
我的任务
Java SE
Java 2 Standard Edition
复制链接
扫一扫
分享
社区描述
Java 2 Standard Edition
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章