qq_38280374
2017-10-19 03:02
采纳率: 33.3%
浏览 1.8k
已采纳

IO流中的自动刷新有什么意义吗?

比如字符缓冲输出流中加入flush(),和不加入flush()有什么区别吗?
同样的打印流中的println()实现的自动刷新有什么实际的意义吗?对这个有点不是很理解,希望有大神可以帮忙解惑,不胜感激!

  • 写回答
  • 好问题 提建议
  • 追加酬金
  • 关注问题
  • 收藏
  • 邀请回答

2条回答 默认 最新

  • ywl470812087 2017-10-19 03:34
    已采纳

    java在使用流时,都会有一个缓冲区,按一种它认为比较高效的方法来发数据:把要发的数据先放到缓冲区,缓冲区放满以后再一次性发过去,而不是分开一次一次地发.
    而flush()表示强制将缓冲区中的数据发送出去,不必等到缓冲区满.
    所以如果在用流的时候,没有用flush()这个方法,很多情况下会出现流的另一边读不到数据的问题,特别是在数据特别小的情况下.

    评论
    解决 2 无用
    打赏 举报
查看更多回答(1条)

相关推荐 更多相似问题