2010-10-08 7 views
3

Я просмотрел java.nio.file.attribute.Attributes и java.nio.file.FileStore, но не смог найти способ узнать размер блока диска.Как размер блока хранилища файлов может быть переносимым в Java 7?

+1

Не является ли размер блока неотъемлемым? Что делать, если хранилище файлов не использует блоки (наверняка маловероятно, но возможно)? –

+2

@Mark Подавляющее большинство файловых магазинов реализованы с помощью вращающихся дисков и, следовательно, используют блоки. Я могу обработать случай, когда размер блока составляет один байт. То, что я хочу, является переносным способом определения этого размера. –

ответ

0

Здесь article размер буфера против пропускной способности ввода-вывода. Синопсис: nio обрабатывает все это для вас. В этом SO post вы должны использовать мощность 2.

+1

Девон, я хочу, чтобы определить размер блока программно, который не полагается на проведение эксперимента и интерпретацию результатов. –

+1

Я понимаю это. Однако в Java нет механизма, который предоставляет предпочтительный размер ввода-вывода для файловой системы. Учитывая, что лучшая задняя позиция состоит в том, чтобы использовать вероятность множественного числа и доверять подсистеме io/nio, чтобы делать правильные вещи. Вообще говоря, файловые системы используют размеры ввода-вывода 4K, 8K или 16K. Таким образом, использование одного из этих размеров будет, как правило, достаточным. –

 Смежные вопросы

  • Нет связанных вопросов^_^