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

Вниз

TStringList - количество строк   Найти похожие ветки 

 
Ega23 ©   (2004-02-10 13:13) [0]

Есть ли какое-либо ограничение на количество строк в TStringList?
Имеется ввиду такое ограничение, что после существенно замедляется работа с листом?


 
Тимохов ©   (2004-02-10 13:14) [1]

Есть, когда система сваповать память начинает.
Зависит от памяти на твоей машине.


 
Ega23 ©   (2004-02-10 13:20) [2]

Скажем так, памяти - 128 мб, файл текстовый - до 3 МБ.
Будут проблемы, или можно пользоваться?


 
Тимохов ©   (2004-02-10 13:22) [3]

Не будет.


 
Amoeba ©   (2004-02-10 13:23) [4]

Если количество строк превышает некоторый РАЗУМНЫЙ ПРЕДЕЛ, то мне жалко пользователя программы (разработчика он точно добрым словом не помянет). А этот предел будет достигнут еще задолго до того, как начнется замедление работы.


 
Тимохов ©   (2004-02-10 13:24) [5]


> РАЗУМНЫЙ ПРЕДЕЛ

Это что такое ?


 
DVM ©   (2004-02-10 13:26) [6]


> Amoeba © (10.02.04 13:23) [4]

А этот список где будет отображаться? У многих визуальных контролов есть ограничение на 32767 элементов.


 
Radionov Alexey ©   (2004-02-10 13:32) [7]

>DVM © (10.02.04 13:26) [6]
Интересно, где найдется тот герой, который будет читать все 32767 элементов?


 
Ega23 ©   (2004-02-10 13:34) [8]

Это не будет отображаться никак. Это читается файл, по своей структуре очень напоминающий DFM в Delphi.
Фактически это что-то типа своей БД.


 
Тимохов ©   (2004-02-10 13:38) [9]


> Ega23 © (10.02.04 13:34) [8]

Тогда забей - 3 мб работать будут в лет.


 
Ega23 ©   (2004-02-10 13:41) [10]

Спасибо всем.


 
Verg ©   (2004-02-10 13:42) [11]


> Ega23 © (10.02.04 13:34) [8]
> Это не будет отображаться никак. Это читается файл, по своей
> структуре очень напоминающий DFM в Delphi.
> Фактически это что-то типа своей БД.


Вы забываете законы Мэрфи
http://www.lib.ru/ANEKDOTY/marphy.txt


 
Anatoly Podgoretsky ©   (2004-02-10 13:56) [12]

Ega23 © (10.02.04 13:20) [2]
Предел адресуемая память. Загонял для теста 700 мб, примерно 5 млн строк. Это конечно медленно, зато 100 мб, вполне нормально.
Тут надо именно использовать понятие разумные пределы и оптимальные алгоритмы, если память является проблемой, а обработка послдовательная, то просто использовать ReadLn.
По скорости время чтения большого текстового файла соизмеримо.

Другая альтернатива, array of string, требует значительно меньше памяти. В TStringList память расходуется не только на строки, но на objects и другое, даже если не используется. Массив не будет иметь этих накладных расходов, но и не будет такого набора методов.

Radionov Alexey © (10.02.04 13:32) [7]
Этот компонент не имеет визуализации, так что смотреть опльзователю просто нечего.


 
Radionov Alexey ©   (2004-02-10 14:00) [13]

>Anatoly Podgoretsky © (10.02.04 13:56) [12]
Я в курсе.
Замечание относилось к возможности макс. загрузить потомков WinControl


 
Ega23 ©   (2004-02-10 14:06) [14]


> Anatoly Podgoretsky © (10.02.04 13:56) [12]

ReadLn немного неподходит, т.к. там рекурсивное чтение будет.
А за array of string спасибо, попробую.



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

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

Наверх




Память: 0.49 MB
Время: 0.022 c
1-79773
Yuri Btr
2004-02-11 21:17
2004.02.25
Уникальность Pointer в TList


1-79964
Ученик2
2004-02-12 18:57
2004.02.25
перерисовка меню


6-80076
Vilux
2003-12-15 21:22
2004.02.25
WebBrowser и данные формы


14-80167
Grinder
2004-01-30 21:41
2004.02.25
А что с torry.net?


1-79929
senya
2004-02-06 18:03
2004.02.25
Выдает сообщение Out Of Memory