Форум: "Базы";
Текущий архив: 2003.09.22;
Скачать: [xml.tar.bz2];
ВнизПроблема с утечкой памяти при работе с большой таблицей Найти похожие ветки
← →
big_bugzy (2003-08-29 13:08) [0]Здравствуйте уважаемые мастера.
У меня такая штука: откраваю в приложении таблицу содержащую ~1.5 млн. записей, иду по каждой записе, и перекачиваю их в другую таблицу предварительно модифицироваф. В диспетчере задачь вижу как используемая память растет со страшной силой. Как этого избежать? я не создаю объектов, не работаю с памятью сам...
← →
Anatoly Podgoretsky (2003-08-29 13:10) [1]Ты уверен, что у тебя есть утечка? Как ты это проверил, кроме наблюдения ща монитором.
← →
Zacho (2003-08-29 13:16) [2]UniDirectional:=true; решение твоей проблемы.
← →
big_bugzy (2003-08-29 13:30) [3]Zacho ©
Я использую адошные компоненты ,у них нет UniDirectional...
Anatoly Podgoretsky ©
Я смотрел только диспетчер задач... память используемая увеличивается и через некоторое время винда начинает говорить что виртуальная память кончается...
← →
ZrenBy (2003-08-29 13:32) [4]CursorLocation = clUseServer
← →
Zacho (2003-08-29 13:34) [5]
> big_bugzy (29.08.03 13:30) [3]
Не работал с ADO, так что конкретно ничего сказать не могу. Могу посоветовать посмотреть какие компоненты в ADO не организуют кэш записей.
← →
Anatoly Podgoretsky (2003-08-29 13:34) [6]Все говоришь правильно, только ничего из этого не свидетельствуе об утечке, тебе для работы нужно как минимум 1 500 000 * размер записи * накладные расходы.
← →
big_bugzy (2003-08-29 13:50) [7]Спасибо всем!
ZrenBy ©
Пока помогло, но тормозить стало жутко :(
← →
big_bugzy (2003-08-29 13:53) [8]А может можно ограничить кеш как-нибудь??
← →
ZrenBy (2003-08-29 14:16) [9]>>Пока помогло, но тормозить стало жутко
???
Провел тест.
Голый цикл по 100000 записей с UseClient идет > 1 мин
(не стал ждать-убил)
с UseServer ~ 1 сек
Может ты ADOTable используешь ?
← →
big_bugzy (2003-08-29 14:19) [10]ZrenBy ©
использую ADODataSet
но с UseServer тормозит зверски...
← →
ZrenBy (2003-08-29 14:24) [11]А...
Попробуй CursorType := ctOpenForwardOnly
← →
big_bugzy (2003-08-29 14:29) [12]Кажись разобрался
поставил CashSize=10000 и память стала переодически освобождаться... во всяком случае пока...
Еще раз всем спасибо
Страницы: 1 вся ветка
Форум: "Базы";
Текущий архив: 2003.09.22;
Скачать: [xml.tar.bz2];
Память: 0.46 MB
Время: 0.01 c