Вниз
Скачать: CL | DM;

IdPOP31.Retrieve - утечка памяти!! ??   Найти похожие ветки 

← →
Gold ©   (2005-07-06 18:31) [0]

В цикле выполняется следующия команда
 IdPOP31.Retrieve(i,Amsg);
При каждом итерации выделяется память. (отслеживаю по диспетчеру задач)
Память больше не освобождается.
Что делять?
Спасибо


← →
Slym ©   (2005-07-07 09:06) [1]

В строке - IdPOP31.Retrieve(i,Amsg); мемлика нет...
А в твоем цикле (код которого ты не привел) есть!


← →
Gold ©   (2005-07-07 12:27) [2]

Искал у себя... все заремарил, расходуется память.
Создаю новое приложение. на форму кидаю три компонентна типа
TIdPOP31, TIdMessage1, TButton1

пишу обработчик:

procedure TForm1.Button1Click(Sender: TObject);
const
  Host : string = "192.168.0.101" ;
  Password : string = "1234";
  Port : smallint = 110;
  UserId : string = "a@maiil.ru";
Var
  i : INTEGER;
begin
  IdPOP31.Host :=  Host;
  IdPOP31.Password := Password;
  IdPOP31.Port := Port;
  IdPOP31.UserId := UserId ;
  IdPOP31.Connect;
  for i:=1 to IdPOP31.CheckMessages do
  begin
     IdMessage1.Clear;
     IdPOP31.Retrieve(i,IdMessage1);
  END;
end;


При каждом итерации выделяется память. (отслеживаю по диспетчеру задач)
Память больше не освобождается. Как вернуть ее злодейку?


← →
Slym ©   (2005-07-08 09:01) [3]

Медленная но верная фрагментация памяти, и никуда от нее не уйти. Сверни приложение разверни и TaskMan тебя обрадует.

Может какой глюк в Indy, но в TIdMessage наверняк нет, слишком уж заезженый компонент


← →
Gold ©   (2005-07-08 10:47) [4]

Стал в рантайме создавать объект IdPOP31, после обработки уничтожать... Все значительно улучшилось..



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

Скачать: CL | DM;



Память: 0.45 MB
Время: 0.025 c
1-1128670543
danilabagroff
2005-10-07 11:35
2005.10.30
OLE Error 800A03EC


14-1129093149
Гость из прошлого
2005-10-12 08:59
2005.10.30
Кто какие языки програмирования знает.


14-1128671022
Andry
2005-10-07 11:43
2005.10.30
Web-сервер


1-1128200616
NightLord
2005-10-02 01:03
2005.10.30
дефрагментация


14-1128440750
LordOfRock
2005-10-04 19:45
2005.10.30
Наткнулся в Интернете...




   Наверх