Какой рекомендуемый размер буфера указывать при создании объекта в конструкторе?
new FileStream("Test#@@#.dat", FileMode.Create,
FileAccess.ReadWrite, FileShare.None, 4096, true);
Здесь он размером 4096.
FileStream
внутри себя использует буфер. Если вы просите прочитать один байт, он реально читает полный буфер, и возвращает только один байт. В следующий раз когда вы просите снова один байт, он не читает, а возвращает следующий байт из буфера. Размер этого буфера и задаётся в конструкторе.
А вот при каких обстоятельствах какой нужен размер буфера, это сложный вопрос, и зависит от очень многих факторов. Например, от того, собираетесь ли вы читать весь файл, или только его небольшую часть. От того, какой размер блока файловой системы. от того, сколько файлов вы собираетесь одновременно открывать и. т. д. Хорошего, общего решения наверное нет.
Проще всего, наверное, просто самостоятельно измерить производительность для конкретно вашей задачи с разными размерами буфера, и подобрать тот, который лучше всего подходит. Есть шанс, что вы не заметите разницы для разумных размеров буфера, если ваша задача не занимается интенсивной работой с диском. Поэтому я посоветовал бы в качестве нулевого приближения взять один из конструкторов без указания размера буфера.
Айфон мало держит заряд, разбираемся с проблемой вместе с AppLab
Перевод документов на английский язык: Важность и ключевые аспекты
Проблема в том, что событие Click не срабатывает (даже в назначенный метод не заходит)Метод Redirect формирует POST запрос и выполняет перенаправление...
Есть некоторый класс Controller, который является входной точкой в приложение и реализует интерфейс IController с набором методов, доступных извне...
Привет всем, у меня недавно возникла ситуацияЗаключается она в том что нужно оправлять письма пользователям, например за 5 дней до их дня...
EnumerableFirst - берет первый first элемент из коллекции, если коллекция пуста - падает эксепшн