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

Вниз

TCollection и TCollectionItem   Найти похожие ветки 

 
Still Swamp   (2003-04-14 09:46) [0]

Проблема следующая.

Создаю некие TCollection и TCollectionItem. Добавляю 150тыс элементов. Задержка минимальная. Те ничтожная. Хорошо.

Вызываю Collection.Clear - задержка минут 5-7. С чем это связано?
Есть ли еще какой нибудь споcб работы с длинными списками?


 
malkolinge ©   (2003-04-14 12:13) [1]

procedure TCollection.Clear;
begin
if FItems.Count > 0 then
begin
BeginUpdate;
try
while FItems.Count > 0 do
TCollectionItem(FItems.Last).Free;
finally
EndUpdate;
end;
end;
end;

Не подкопаться :(....А зачем тебе имеено коллекция ?


 
Still Swamp   (2003-04-14 14:58) [2]

угу - и я не подкопался... но как же она долго работает.
а почему коллекция? - удобно. просто раньше с небольшим количеством работал - а сейчас вот косяк случился.


 
malkolinge ©   (2003-04-14 15:23) [3]

В чем жу удобство ? тебе список на стадии разработки приложения нужен ? в дизайн тайме ?


 
REA ©   (2003-04-14 15:33) [4]

Сложно представить коллекцию в виде 150к элементов.
А может задержка собственно в деструкторе?
Вот где профайлер бы пригодился, который Борланд упорно не хочет делать.


 
Юрий Федоров ©   (2003-04-14 15:59) [5]

Судя по коду в деструкторе Item"а идет поиск его в списке и удаление из списка. Видимо, поиск в списке и занимает столько времени.
Почему не использовать TList?


 
malkolinge ©   (2003-04-14 18:16) [6]


> Судя по коду в деструкторе Item"а идет поиск его в списке
> и удаление из списка. Видимо, поиск в списке и занимает
> столько времени.
> Почему не использовать TList?

Сие тайна !



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

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

Наверх




Память: 0.48 MB
Время: 0.011 c
11-76867
Vitalon
2002-07-17 19:07
2003.04.24
Программное выполнение скроллинга в Memo


14-77097
Vlad Oshin
2003-04-07 10:52
2003.04.24
Нужна таблица кодов писка компа, когда он не грузится


14-77080
Lexa
2003-04-06 23:13
2003.04.24
Удаление CLX-компонентов


6-77043
Serhij H.
2003-02-27 23:01
2003.04.24
Proxy для WebBrowser


3-76758
NetKnight
2003-04-08 00:41
2003.04.24
Перехват сообщения DataSource changed