【问题标题】:Why is Java 8 Stream class AutoCloseable?为什么 Java 8 Stream 类 AutoCloseable?
【发布时间】:2014-09-12 05:51:42
【问题描述】:

在 Java 8 中,Stream 类实现了 AutoCloseable。这意味着应该明确关闭流实例。

我明白为什么文件处理程序和数据库连接是可关闭的。但为什么要流式传输?

【问题讨论】:

    标签: java java-8 java-stream


    【解决方案1】:

    我觉得现在的documentation/javadoc of Stream已经很清楚了:

    Streams 有一个 BaseStream.close() 方法并实现 AutoCloseable, 但几乎所有流实例实际上都不需要关闭 使用后。通常,只有源为 IO 通道的流(例如 因为 Files.lines(Path, Charset)) 返回的那些将需要关闭。 大多数流由集合、数组或生成器支持 功能,不需要特殊的资源管理。 (如果一个流 确实需要关闭,它可以声明为一个资源 try-with-resources 语句。)

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2016-10-31
      • 1970-01-01
      • 2017-01-08
      • 2014-12-19
      • 2015-10-08
      • 2017-04-13
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多