ByteArrayOutputStream关闭问题

hmy468689496 2016-09-28 09:28:06
ByteArrayOutputStream里面的close关闭无效,是一个空实现源码。那么有木有办法对其进行有效的关闭?不关闭对性能有影响吗?
项目经理问过我为什么关流问题了,,,但是这个流是关闭不掉的,所以在寻找如何有效关闭。而jdk既然让这个字节数组流关闭无效,那么自然有他的道理,那既然jdk的设计者们都没让他关,所以我在此一问性能问题的影响。共两个问题哈
...全文
1508 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
  • 打赏
  • 举报
回复
JVM 可以监测托管内存的使用,所以如果你的一个类除了托管内存不占用其它东西,是可以完全交给 JVM 处理的。 StringWriter 也同理。 但是如果你不知道它是一个 ByteArrayOutputStream,只知道它是 OutputStream,那就没办法了。有功夫判断还不如直接 close()。
hmy468689496 2016-09-29
  • 打赏
  • 举报
回复
这个回答好,,就想问为啥不用关。虚拟的流,谢谢哈
小灰狼 2016-09-28
  • 打赏
  • 举报
回复 2
ByteArrayOutputStream/ByteInputStream 都是对内存中的字节数据的访问,只是一个虚拟的流,没有占用网络、磁盘文件等资源,所以没有关闭的必要,实现上也是空 但是,对流进行关闭是一个好习惯,或者说,你必须保证所有的 OutputStream 对象必须被调用 close

62,615

社区成员

发帖
与我相关
我的任务
社区描述
Java 2 Standard Edition
社区管理员
  • Java SE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧