[英]Java: I/O, read() will not fill buffer?
我正在學習I / O,文件和套接字,我不明白這句話的意思
read不會總是填充緩沖區
這是什么意思? 有人對我有一些解釋嗎?
"read will not always fill a buffer"
上面的句子意味着Buffer
有一定的size
, 填充后 自動刷新 ,但是假設要讀入Buffer的數據不足以填充Buffer ...那么你需要手動刷新它。
有關詳細信息,請閱讀Kathy Sierra的SCJP Programmer guide
或Thinking in Java's
IO章節中的 Thinking in Java's
。
read()方法接受將從流或讀取器填充的字節數組。
如果沒有足夠的數據可用於填充緩沖區,則可以
標准實現混合了兩者:它等待至少有一個字節可用。
注意:第二種情況意味着read()可能在沒有任何數據的情況下返回。
它將阻塞,直到至少有一個字節可用,並返回該點可以讀取的字節數,而不會再次阻塞。 見Javadoc。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.