【发布时间】:2014-09-12 05:51:42
【问题描述】:
在 Java 8 中,Stream 类实现了 AutoCloseable。这意味着应该明确关闭流实例。
我明白为什么文件处理程序和数据库连接是可关闭的。但为什么要流式传输?
【问题讨论】:
标签: java java-8 java-stream
在 Java 8 中,Stream 类实现了 AutoCloseable。这意味着应该明确关闭流实例。
我明白为什么文件处理程序和数据库连接是可关闭的。但为什么要流式传输?
【问题讨论】:
标签: java java-8 java-stream
我觉得现在的documentation/javadoc of Stream已经很清楚了:
Streams 有一个 BaseStream.close() 方法并实现 AutoCloseable, 但几乎所有流实例实际上都不需要关闭 使用后。通常,只有源为 IO 通道的流(例如 因为 Files.lines(Path, Charset)) 返回的那些将需要关闭。 大多数流由集合、数组或生成器支持 功能,不需要特殊的资源管理。 (如果一个流 确实需要关闭,它可以声明为一个资源 try-with-resources 语句。)
【讨论】: