文章详情页
JAVA中获取文件输入流跟内存占用的关系
浏览:310日期:2023-11-01 10:26:59
问题描述
java程序中获取一个文件的输入流,比如一个50M大小的文本文件的输入流,这个时候程序是已经将整个文件的已经加载到内存中了吗?已经在内存中占据了50M的空间吗? 还是说只有一个入口而已,需要循环取其中的内容的时候,才一点一点加载文件的内容?
问题解答
回答1:并不是整个加载到内存中,但是可以通过缓冲区的方式将部分字节加载到缓存不是整个加载到内存中,但是可以通过缓冲区的方式将部分字节加载到缓存
回答2:仅仅是打开输入流,而没有进行读取的话,文件是没有占用内存的,只有读取了文件内容,才会相应的用掉内存,读多少用掉多少。
回答3:通过缓冲才能加载到内存中,操作系统里也是这样的。
标签:
java
相关文章:
1. javascript - 微信小程序 如何实现这种左滑动出现删除的办法?有相关api吗?2. python打开.py文件的时候出现window无法打开该文件是怎么回事呢?3. javascript - vue中input的blur影响了下拉的点击事件如何解决4. dockerfile - 为什么docker容器启动不了?5. javascript - swiper插件loop模式下的BUG?6. docker gitlab 如何git clone?7. docker 17.03 怎么配置 registry mirror ?8. mysql插入文本如果是个sql语句就报错了9. 关docker hub上有些镜像的tag被标记““This image has vulnerabilities””10. javascript - sublime快键键问题
排行榜

网公网安备