关闭InputStream是否关闭与其关联的通道?

问题描述 投票:-1回答:2

如果我从Channel创建一个InputStream,然后关闭InputStream,它将关闭关联的Channel吗?我需要显式关闭关联的Channel吗?

try (InputStream ioStream = getInputStream()) {
    ReadableByteChannel inputChannel = Channels.newChannel(ioStream);
    //do something
} 
java nio
2个回答
0
投票

RTDD(阅读织补文档。。

Channels.newChannel(重点是我)

构造一个从给定流中读取字节的通道。

结果通道将不被缓冲;它将简单地将其I / O操作重定向到给定的流。 关闭频道会导致流被关闭。


0
投票

从Java API 7:

结果通道将不被缓冲;它将简单地将其I / O操作重定向到给定的流。 关闭频道会导致流被关闭

希望有帮助!

© www.soinside.com 2019 - 2024. All rights reserved.