为了账号安全,请及时绑定邮箱和手机立即绑定

在Java流中flush()的目的是什么?

在Java流中flush()的目的是什么?

慕斯王 2019-08-31 14:58:32
在Java中,flush()方法用于流中。但我不明白使用这种方法的目的是什么?fin.flush();告诉我一些建议。
查看完整描述

3 回答

?
茅侃侃

TA贡献1842条经验 获得超21个赞

从文档中的flush方法:


刷新输出流并强制写出任何缓冲的输出字节。flush的一般契约是调用它表示,如果先前写入的任何字节已被输出流的实现缓冲,则应立即将这些字节写入其预期目的地。


缓冲主要是为了提高I / O性能。有关这方面的更多信息,请参阅本文:调优Java I / O性能。


查看完整回答
反对 回复 2019-08-31
?
慕慕森

TA贡献1856条经验 获得超17个赞

当我们发出任何命令时,该命令的流存储在我们计算机中称为缓冲区(临时内存位置)的内存位置。当所有临时内存位置都已满时,我们使用flush(),它刷新所有数据流并完全执行它们,并为缓冲区临时位置中的新流提供新空间。 - 希望你明白


查看完整回答
反对 回复 2019-08-31
?
波斯汪

TA贡献1811条经验 获得超4个赞

将数据写入流时,不会立即写入,而是缓冲。因此,当您需要确保写入缓冲区中的所有数据时,请使用flush()。


我们需要确保在关闭流之前完成所有写操作,这就是在文件/缓冲编写器的close()中调用flush()的原因。


但是,如果您要求在关闭流之前随时保存所有写入,请使用flush()


查看完整回答
反对 回复 2019-08-31
  • 3 回答
  • 0 关注
  • 1008 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信