![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Кто работал с File Mapping, нужен совет [D6, Win2k]
Андрусь © (2003-01-20 13:47:00)Привет всем!Такой вопрос:мне нужно из файла декодировать инф.Для этого её по сути нажно читать побайтно и обрабатывать.Размер порядка 15-20 М.Читаю при помощи TFileStream. Отрабатывает за 1-1.5 минут.Много.Посоветовали сделать ч/з File Mapping - с виду несложно. Получу ли я существенной прибавки к скорости и каким гемороем при этом обзаведусь.Зараннее всем большое спасибо.
Smithson (2003-01-20 15:13:00) [21]Это-то да, но я имел в виду, что у человека уже написан некий код с доступом к файлу через TFileStream и что не удасться его легко переделать на доступ к ... памяти.
Игорь Шевченко (2003-01-20 14:55:00) [22]
> Придется работать на API
С памятью :-)))
Smithson (2003-01-20 14:35:00) [23]Из геммороя (если я ошибаюсь, поправьте меня) будет то, что стандартные delphi операции с файлами не пойдут с mapped file. Придется работать на API. А так - что там весь файл считывается в память, что здесь - един фиг.
Андрусь (2003-01-20 14:03:00) [24]Я понимаю,насчёт буфера. Как раз в том и вопрос,по какому пути пойти.До этого времени скорость работы не была важна: отрабатывался алгоритм декодирования.
MBo (2003-01-20 13:58:00) [25]Прибавку получить можешь, но, вероятно, дело замедляется в основном тем, сколько данных читаешь за один раз.
И с использованием TFileStream можно ускориться, если читать не побайтно, а сразу достаточно большой буфер в память - лучше 4KByte*N