java程式中取得一個檔案的輸入流,例如一個50M大小的文字檔案的輸入流,這個時候程式是已經將整個檔案的已經載入到記憶體中了嗎?已經在記憶體中佔據了50M的空間嗎?還是說只有一個入口而已,需要循環取其中的內容的時候,才一點一點載入文件的內容?
並不是整個載入到記憶體中,但是可以透過緩衝區的方式將部分位元組載入到快取不是整個載入到記憶體中,但是可以透過緩衝區的方式將部分位元組載入到快取
只是打開輸入流,而沒有進行讀取的話,文件是沒有佔用內存的,只有讀取了文件內容,才會相應的用掉內存,讀多少用掉多少。
透過緩衝才能載入到記憶體中,作業系統裡也是這樣的。
並不是整個載入到記憶體中,但是可以透過緩衝區的方式將部分位元組載入到快取不是整個載入到記憶體中,但是可以透過緩衝區的方式將部分位元組載入到快取
只是打開輸入流,而沒有進行讀取的話,文件是沒有佔用內存的,只有讀取了文件內容,才會相應的用掉內存,讀多少用掉多少。
透過緩衝才能載入到記憶體中,作業系統裡也是這樣的。