Каков размер буфера по умолчанию для java.io. BufferedInputStream на старом и экзотическом JVMs?

Я проводил некоторое исследование для сообщения в блоге относительно java.io.BufferedInputStream и буферы. По-видимому, за эти годы, значение по умолчанию выросло с ничтожных 512 байтов до 8 192 байтов с (самонадеянно) реализации Java 7 Sun и было даже явно указано в JavaDocs в JDK 1.1.8. Мой вопрос также поднял вопросы того, кто/какой deciedes, чем значение по умолчанию должно быть - это не как black-n-white, как я ожидал.

Мне любопытно относительно того, чем размер буфера по умолчанию был при каждом выпуске версии, и чем это может быть в другом, экзотическом JVMs. До сих пор я разыскал его, через исходный код, JavaDocs или отчеты об ошибках Sun для 1,0, 1.1, 1.4, Java 5, Java 6 и (самонадеянно снова) Java 7 JVM Sun.

То, что мне не удалось поднять, является этим значением для

  • Sun JDK 1.2's реализация JVM
  • Sun JDK 1.3's реализация
  • Значение любой другой реализации (как IBM или что-то еще)

Так, я задавался вопросом, что те значения и где я мог найти ссылку на них?

Или, то раскрытие, если какой-либо SOpedians там мог бы иметь доступ к одной из этих установок. Если так, Вы могли скомпилировать и работать ниже кода и затем сообщить здесь? Или, Вы знаете о

import java.io.BufferedInputStream;
import java.io.InputStream;

public class BufferSizeDetector extends BufferedInputStream {
    public static void main(String[] args) {
        BufferSizeDetector bsd = new BufferSizeDetector(null);

        System.err.println(System.getProperty("java.version"));
        System.err.println(bsd.getBufferSize());
    }

    public BufferSizeDetector(InputStream in) {
        super(in);
    }

    public int getBufferSize() {
        return super.buf.length;
    }
}

17
задан Community 23 May 2017 в 11:53
поделиться

2 ответа

Система:

Linux wart 2.6.33-rc1-00225-gc9f937e #2 Wed Dec 23 17:55:01 UTC 2009 armv5tel GNU/Linux
OpenJDK Runtime Environment (IcedTea6 1.4.1) (6b14-1.4.1-0ubuntu10)
OpenJDK Core VM (build 14.0-b08, interpreted mode)

Выход из вашей программы:

1.6.0_0
8192
3
ответ дан 30 November 2019 в 14:36
поделиться

Я не уверен, что вы надеетесь учиться у этого, но так как у меня есть его перед собой ... Win32 IBM 1.4.2 JRE использует размер буфера 2048 .

1
ответ дан 30 November 2019 в 14:36
поделиться
Другие вопросы по тегам:

Похожие вопросы: