Буферизованный по сравнению с не буферизованный, который использовать?

Идеал Шаблона Модуля: Разоблачающий Шаблон Модуля

А аккуратное небольшое расширение очень устойчивого шаблона.

11
задан stackMe 6 July 2009 в 19:03
поделиться

5 ответов

Используйте буфер, если к потоку требуется много малого доступа. Используйте небуферизованный доступ, если у вас будет относительно мало и относительно большой доступ.

14
ответ дан 3 December 2019 в 05:58
поделиться

Единственный раз, когда вы должны использовать небуферизованный ввод-вывод, - это когда задержка и агрегация, вызванные буферизацией, не подходят для вашего приложения.

3
ответ дан 3 December 2019 в 05:58
поделиться

«Есть ли формула, которая всегда подскажет вам, что подходит?»

Если бы она была, она уже была бы в библиотеках и не была бы дизайнерским решением, которое вы придется сделать.

Поскольку нет однозначного ответа, вы должны принять дизайнерское решение, вы должны действительно об этом подумать.

Или вы можете попробовать оба варианта и посмотреть, какой из них «лучше», исходя из вашего уникальная проблема и ваш уникальный критерий.

Большинство стандартных библиотек ввода-вывода буферизированы. Это намек на то, что большинство операций ввода-вывода выигрывают от буферизации. Но не все. Игры, например, нуждаются в небуферизованном доступе к элементам управления игрой.

2
ответ дан 3 December 2019 в 05:58
поделиться

Помните также, что BufferedReader предоставляет вам удобный метод readLine () , который позволяет вам читать ваш контент по одной строке за раз. .

1
ответ дан 3 December 2019 в 05:58
поделиться

Я предлагаю вам использовать Buffered *, если это заставляет ваше приложение работать быстрее, иначе я бы не стал с этим возиться. т.е. попробуйте с реалистичными данными, чтобы увидеть, поможет ли это.

0
ответ дан 3 December 2019 в 05:58
поделиться
Другие вопросы по тегам:

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