- Java 双重比较
- java - 比较器与 Apache BeanComparator
- Objective-C 完成 block 导致额外的方法调用?
- database - RESTful URI 是否应该公开数据库主键?
在流教程中,没有提到关闭从 Files.newInputStream(path)
获得的流。只有一些晦涩:
Whether the returned stream is asynchronously closeable and/or interruptible is highly file system provider specific and therefore not specified.
在这种情况下,什么是“异步”?如果我显式关闭流,或者另一个线程异步关闭流?
最佳答案
您绝对必须关闭获得的InputStream
,就像所有其他的一样。术语“可异步关闭”指的是在另一个线程因 I/O 操作而阻塞时关闭流的能力。
来自 InterruptibleChannel
文档:
A channel that implements this interface is asynchronously closeable: If a thread is blocked in an I/O operation on an interruptible channel then another thread may invoke the channel's close method. This will cause the blocked thread to receive an AsynchronousCloseException.
关于java - 我应该关闭使用 java.nio.file.Files.newInputStream 创建的 Streams 吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28048325/
在我的 Windows 7 上,Files.newInputStream 返回 sun.nio.ch.ChannelInputStream。当我测试它与 FileInputStream 的性能时,我惊
注意:请运行下面的确切代码;不要对其进行改编,特别是不要使用 File,因为此错误与新的 java.nio.file API 相关 好吧,这不是一个真正的“需要答案的问题”,而是一个需要证人的电话……
本文整理了Java中org.apache.xmlbeans.impl.values.XmlObjectBase.newInputStream()方法的一些代码示例,展示了XmlObjectBase.n
我正在尝试打开文件进行读取或创建文件(如果文件不存在)。我使用这段代码: String location = "/test1/test2/test3/"; new File(location).mkd
在流教程中,没有提到关闭从 Files.newInputStream(path) 获得的流。只有一些晦涩: Whether the returned stream is asynchronously
我正在使用 soanr 来检查我的 java 代码,有一个问题表明,我们应该使用 java.nio.file.Files.newInputStream(myfile.toPath()) 而不是 new
我是一名优秀的程序员,十分优秀!