wcf_developer 2017-10-19 03:02 采纳率: 33.3%
浏览 1885
已采纳

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

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

  • 写回答

2条回答

  • ywl470812087 2017-10-19 03:34
    关注

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

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

悬赏问题

  • ¥15 对于相关问题的求解与代码
  • ¥15 ubuntu子系统密码忘记
  • ¥15 信号傅里叶变换在matlab上遇到的小问题请求帮助
  • ¥15 保护模式-系统加载-段寄存器
  • ¥15 电脑桌面设定一个区域禁止鼠标操作
  • ¥15 求NPF226060磁芯的详细资料
  • ¥15 使用R语言marginaleffects包进行边际效应图绘制
  • ¥20 usb设备兼容性问题
  • ¥15 错误(10048): “调用exui内部功能”库命令的参数“参数4”不能接受空数据。怎么解决啊
  • ¥15 安装svn网络有问题怎么办