文章詳情頁
JAVA中獲取文件輸入流跟內存占用的關系
瀏覽:289日期:2023-11-01 10:26:59
問題描述
java程序中獲取一個文件的輸入流,比如一個50M大小的文本文件的輸入流,這個時候程序是已經將整個文件的已經加載到內存中了嗎?已經在內存中占據了50M的空間嗎? 還是說只有一個入口而已,需要循環取其中的內容的時候,才一點一點加載文件的內容?
問題解答
回答1:并不是整個加載到內存中,但是可以通過緩沖區的方式將部分字節加載到緩存不是整個加載到內存中,但是可以通過緩沖區的方式將部分字節加載到緩存
回答2:僅僅是打開輸入流,而沒有進行讀取的話,文件是沒有占用內存的,只有讀取了文件內容,才會相應的用掉內存,讀多少用掉多少。
回答3:通過緩沖才能加載到內存中,操作系統里也是這樣的。
標簽:
java
相關文章:
1. 運行python程序時出現“應用程序發生異常”的內存錯誤?2. spring-mvc - spring-session-redis HttpSessionListener失效3. 在mac下出現了兩個docker環境4. 利用IPMI遠程安裝centos報錯!5. IOS app應用軟件的id號怎么查詢?比如百度貼吧的app-id=4779278136. javascript - 最近用echarts做統計圖時遇到兩個問題!!7. javascript - node得到req不能得到boolean8. 淺談Vue使用Cascader級聯選擇器數據回顯中的坑9. java - Spring boot 讀取 放在 jar 包外的,log4j 配置文件,系統有創建日志文件,不寫入日志信息。10. javascript - 在 model里定義的 引用表模型時,model為undefined。
排行榜

網公網安備