文章詳情頁
JAVA中獲取文件輸入流跟內存占用的關系
瀏覽:202日期:2023-11-01 10:26:59
問題描述
java程序中獲取一個文件的輸入流,比如一個50M大小的文本文件的輸入流,這個時候程序是已經將整個文件的已經加載到內存中了嗎?已經在內存中占據了50M的空間嗎? 還是說只有一個入口而已,需要循環取其中的內容的時候,才一點一點加載文件的內容?
問題解答
回答1:并不是整個加載到內存中,但是可以通過緩沖區的方式將部分字節加載到緩存不是整個加載到內存中,但是可以通過緩沖區的方式將部分字節加載到緩存
回答2:僅僅是打開輸入流,而沒有進行讀取的話,文件是沒有占用內存的,只有讀取了文件內容,才會相應的用掉內存,讀多少用掉多少。
回答3:通過緩沖才能加載到內存中,操作系統里也是這樣的。
標簽:
java
相關文章:
1. 如何解決docker宿主機無法訪問容器中的服務?2. 前端 - CSS3 box-shadow如何設置,或者用什么方法可以產生圖中這樣陰影的效果。3. node.js - vue-cll+sass 樣式不出來 已經npm install sass、 sass-loader了4. html - css 如何讓文字標題顯示在邊框上?5. docker 下面創建的IMAGE 他們的 ID 一樣?這個是怎么回事????6. 在應用配置文件 app.php 中找不到’route_check_cache’配置項7. html按鍵開關如何提交我想需要的值到數據庫8. html - 微信端video標簽播放mp4視頻,安卓端提示視頻解析錯誤9. HTML5中怎么判斷用戶是否正在瀏覽頁面?10. html5 - 微信開發的時候老是報這樣的錯誤errmsg config invalid signature
排行榜
