Главная страница
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.02 c
1-79751
Alex*
2004-02-12 09:32
2004.02.25
PasteSpecial в Excele.


14-80164
ИМХО
2004-02-01 03:40
2004.02.25
Американские баксы, дядя Сэм и пр.


1-79813
siriusP
2004-02-10 19:22
2004.02.25
Как вставить в ImageList прозрачную картинку?


1-79967
Batoon
2004-02-14 12:10
2004.02.25
Проблема с компонентом


6-80067
vitalyIshim
2003-12-16 09:39
2004.02.25
Proxy