Восемь лет спустя
kv75
дневник заведен 05-10-2003
постоянные читатели [82]
закладки:
цитатник:
дневник:
местожительство:
Москва, Россия
интересы [13]
шахматы, грибы, Пратчетт, Иваси, Morrowind, Guild Wars
[1] 08-05-2008 07:37
Альпы

[Print]
Элизабет
Суббота, 3 Апреля 2004 г.
22:58 Думаем песенками
А впереди - вся ночь
И две навязчивых идеи
О компоненте TStringList...

//-----

Возвращаюсь я с работы,
Сумку ставлю у стены...
А мой сосед попросил меня спуститься к нему поставить программу для свежеприобретённого пишущего CD дисковода. Когда пришёл, выяснилось, что надо ещё и дисковод поставить... А потом ещё и программку проверить, записав что-нибудь... А потом ещё и с играми разобраться, которые не устанавливаются...
09:00 Тайминги
Сегодня поигрался на своём компьютере с таймингами старой и новой версий программ для работы с вышеупомянутыми файлами. Версия 2 отличается от версии 1 изменённым механизмом заполнения таблицы (по столбцам, а не по ячейкам) и слегка ускоренным методом сортировки (без дополнительных затрат памяти, а также обмен по строкам, а не заполнение ячеек).

Результаты измерений

Видно, что новый метод открытия файлов медленнее работает на маленьких файлах, зато выигрывает на больших за счёт отсутствия дикого свопинга, из-за которого старый метод вообще не в состоянии заполнить таблицу на моём компьютере. Новый же механизм обработки результатов сортировки даёт заметный выигрыш на файлах всех размеров.

Тем не менее, компонент TStringGrid всё же слишком неадекватен для задачи обработки больших файлов, поэтому я склоняюсь к мысли о необходимости его замены. Не люблю писать компоненты-заменители стандартных VCL'овских, особенно таких нетривиальных, как таблицы, но, видимо, придётся.
Закрыть