Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2004.11.07;
Скачать: CL | DM;

Вниз

Способы хранения списков строк во время работы программы.   Найти похожие ветки 

 
Андрей Кравцов   (2004-10-23 10:12) [0]

Есть три БОЛЬШИХ списка строк, которые постоянно используются программой. Их очень часто приходится перегружать, они хранятся в файлах и грузятся в ListBox секунды по четыре - пять каждый. Целесообразно ли использовать TStringList для хранения в нем списков во время работы программы или нет? Как это повлияет не работоспособность программы в целом? Какие еще методы можно использовать для работы с БОЛЬШИМИ списками строк?


 
TUser ©   (2004-10-23 13:10) [1]

Возможно, что и целесообразно. Все зависит от того, насколько они большие и насколько очень часто. Из других методов - см. в сторону всяких хеш-таблиц, нагруженных деревьев. Многое зависит от того, важен ли для тебя порядок строк, можно ли их, скажем, отсортировать.


 
Андрей Кравцов   (2004-10-23 19:13) [2]

TUser ©   (23.10.04 13:10) [1]

Списки стинговые (по три - четыре записи в строке), строк порядка 300-400 тыс. в каждом списке.
Вызов списков происходит каждый раз, когда в них вносятся изменения, либо происходит поиск по ним. За раз работы программы случается порядка 5-8 вызовов списков.


 
Anatoly Podgoretsky ©   (2004-10-23 19:31) [3]

Свой класс на основе TList


 
palva ©   (2004-10-23 22:47) [4]

Вообще для такой работы предназначены СУБД. Если база хорошо спроектирована, то грузятся только те строки, которые отображаются на экране, а любые изменения вносятся без загрузки всего массива строк.


 
Defunct ©   (2004-10-23 22:56) [5]

> строк порядка 300-400 тыс. в каждом списке


IMHO FB embedded решит проблему. 3 таблички по 3-4 текстовых поля в каждой и одно ключевое. Что может быть проще и быстрее?


 
GuAV ©   (2004-10-23 23:06) [6]

Anatoly Podgoretsky ©   (23.10.04 19:31) [3]
Свой класс на основе TList

А не лучше ли свой класс на основе TStrings ?


 
atruhin ©   (2004-10-24 07:59) [7]

300-400 тыс однозначно СУБД - любая


 
Anatoly Podgoretsky ©   (2004-10-24 10:25) [8]

GuAV ©   (23.10.04 23:06) [6]
У него 4 значение в строке



Страницы: 1 вся ветка

Текущий архив: 2004.11.07;
Скачать: CL | DM;

Наверх




Память: 0.46 MB
Время: 0.037 c
1-1098630512
LAndreyV
2004-10-24 19:08
2004.11.07
Подскажите по поводу hint


6-1093710572
Фёдор Мегатронов
2004-08-28 20:29
2004.11.07
Как узнать имя файла по указанному урлу ?


1-1098360149
Максим
2004-10-21 16:02
2004.11.07
DLL&ModalForm - Возвращение значения от DLL


1-1098442610
}|{yk
2004-10-22 14:56
2004.11.07
Такой вот код вываливается с ошибкой OLE


1-1098647524
MegaBonus
2004-10-24 23:52
2004.11.07
Почему замедляется работа процедуры?





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский