Форум: "Система";
Текущий архив: 2002.12.30;
Скачать: [xml.tar.bz2];
ВнизTFileStream vs BlockRead Найти похожие ветки
← →
Yuri Btr (2002-10-04 11:19) [0]Ув. мастера, есть большой файл ~500 Мб (нетипизированый) его нужно обработать - перелопатить каждый байтик. Открывать его надо с правами типа fmShareDenyNone. В этом случае какой подход лучше использовать для чтения? Я так понимаю что разницы в скорости между TFileStream (Read) и BlockRead в буффер - никакой? Так ли это? Или есть ещё эффективней способ (типа отображаемых в память файлов)?
Заранее спасибо.
← →
Игорь Шевченко (2002-10-04 12:41) [1]CreateFileMapping, MapViewOfFile
← →
apay (2002-10-20 17:16) [2]Если чтение последовательное, то может лучше при его открытии в CreateFile использовать FILE_FLAG_SEQUENTIAL_SCAN (подробнее в хелпах)
← →
Семеленов Валерий (2002-10-25 11:42) [3]; Я так понимаю что разницы в скорости между
; TFileStream (Read) и BlockRead в буффер - никакой?
По моим проверкам - TFileStream (Read) - быстрее.
Я вижу огромное преимущество TFileStream в том, что ты вместо работы с буфером, получаешь линейный массив без ограничений по размеру буфера.
Мы перевели работу с базами данных (постоянная запись с периодом менее 5 секунд) на файловый ввод-вывод используя TFileStream.
В результате получили 8-кратный выигрыш в скорости работы на том же компьютере (Cel 450).
Страницы: 1 вся ветка
Форум: "Система";
Текущий архив: 2002.12.30;
Скачать: [xml.tar.bz2];
Память: 0.44 MB
Время: 0.007 c