Threads
От: kse Россия  
Дата: 17.03.03 12:52
Оценка:
Добрый день!

вопрос по поводу тредов. Мой тред делает вот что: с помощью компонентов TIdPOP3 и TIdMessage получает письмо, разбирает содержимое и че-то пишет в базу данных на MS SQL через TADOQuery.
После этого тред уничтожается.
Десять раз проверил — все корректно закрывается, со всеми создаваемыми в треде объектами делается Free. Но память не освобождается (смотрю в Task manager'e), количество тредов при запуске программы 2, после отработки треда это количество=6 (тоже по сведениям Task manager'а), причем это количество тредов ( 6 ) практически не изменяется сколько раз бы мой тред не отработал.

Может кто поопытнее меня подскажет в чем дело? Почему память не освобождается?
Re: Threads
От: ArtDenis Россия  
Дата: 17.03.03 16:48
Оценка:
Здравствуйте, kse, Вы писали:

kse>Добрый день!

kse>...
kse>Может кто поопытнее меня подскажет в чем дело? Почему память не освобождается?

Думаю, Bounds Checker спасёт отца русской демократии.

Денис.
... << RSDN@Home 1.0 beta 6a >>
[ 🎯 Дартс-лига Уфы | 🌙 Программа для сложения астрофото ]
Re: Threads
От: trial  
Дата: 18.03.03 11:40
Оценка: 16 (2)
kse> Task manager'а), причем это количество тредов ( 6 ) практически не изменяется сколько раз бы мой тред не отработал.

OLEDB провайдер имеет полное право насоздовать своих потоков, которые будут болтаться до закрытия процесса — например Jet именно так и делает

kse>Может кто поопытнее меня подскажет в чем дело? Почему память не освобождается?


С памятью аналогично — он (OLEDB) может создать свой кэш

ИМХО, если при многократной прогонке _твоего_ кода память больше не растёт и новых потоков не появляется то всё нормально

Хотя можешь для подстаховки проверить BoundsChecker'ом
Re[2]: Threads
От: kse Россия  
Дата: 25.03.03 10:13
Оценка:
спасибо
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.