Показать сообщение отдельно
Старый 29.12.2011, 00:10   #5
impersonalis
Зануда с интернетом
 
Аватар для impersonalis
 
Регистрация: 04.09.2005
Сообщений: 14,014
Написано 6,798 полезных сообщений
(для 20,935 пользователей)
Ответ: Большой объем данных

Сообщение от ViNT Посмотреть сообщение
Самое гуманное - работать с буфером, размер которого не слишком большой для ОЗУ, но позволяет загружать объем данных, значительно превышающий размер одномоментно обрабатываемых данных. То есть, если нужно обрабатывать файл побайтно, а сам файл весит пару-тройку сотен МБ, берем буфер размером в пару МБ и работаем уже с ним, периодически загружая данные (как только ранее загруженные будут обработаны). В результате - и память не сильно загажена, и обращений к диску меньше.
Пожалуй, ещё стоит уточнить (на всякий случай), что "побайтно" здесь значит "последовательно байт за байтом", а не "один байт за раз"(размещённый при этом в произвольной части файла).
__________________
http://nabatchikov.com
Мир нужно делать лучше и чище. Иначе, зачем мы живем? tormoz
А я растила сына на преданьях
о принцах, троллях, потайных свиданьях,
погонях, похищениях невест.
Да кто же знал, что сказка душу съест?
(Offline)
 
Ответить с цитированием
Эти 2 пользователя(ей) сказали Спасибо impersonalis за это полезное сообщение:
FireOwl (29.12.2011), ViNT (29.12.2011)