java中的緩衝流是快取在哪裡?

java中的緩衝流是快取在哪裡?曉川說2019-06-23 23:07:02

1。計算機訪問外部裝置或檔案,要比直接訪問記憶體慢的多。如果我們每次呼叫read()方法或者writer()方法訪問外部的裝置或檔案,CPU就要花上最多的時間是在等外部裝置響應,而不是資料處理。

2。我們開闢一個記憶體緩衝區的記憶體區域,程式每次呼叫read()方法或writer()方法都是讀寫在這個緩衝區中。

3。當這個緩衝區被裝滿後,系統才將這個緩衝區的內容一次集中寫到外部裝置或讀取進來給CPU。

4。使用緩衝區可以有效的提高CPU的使用率,能提高整個計算機系統的效率。在字元流操作中,所有的字元都是在記憶體中形成的,在字元流輸出前都將儲存在記憶體中的緩衝區內。

緩衝流:

再讀寫資料時,讓資料在緩緩衝區能減少系統實際對原始資料來源的存取次數,因為一次能做多個數據單位的操作,相較而言,對於從檔案讀取資料或將資料寫入檔案,比起緩衝區的讀寫要慢多了。所以使用緩衝區的 流,一般都會比沒有緩衝區的流效率更高,擁有緩衝區的流別稱為緩衝流,包括BufferedInputStream、BufferedOutputStream類和BufferedReader、BufferedWriter類。緩衝流把資料從原始流成塊讀入或把資料積累到一個大資料塊後再成批寫出,透過減少透過資源的讀寫次數來加快程式的執行。

java中的緩衝流是快取在哪裡?

java中的緩衝流是快取在哪裡?

java中的緩衝流是快取在哪裡?

java中的緩衝流是快取在哪裡?