Для обработки интернет страниц используется компонент TImbeddedWB.
Открывается длинный перечень страниц (около 10000).
Далее ведется работа с DOM моделью документа посредством переменных типа IHTMLElementCollection и IHTMLElement.
Один из фрагментов кода:
tmpInputs := WB.GetDocument.all.tags('input') as IHTMLElementCollection;
for i := 0 to tmpInputs.Length - 1 do
begin
tmpElement := tmpInputs.item(i, 0) as IHTMLElement;
tmpS := tmpElement.getAttribute('name', 0);
if tmpS = 'searched_name' then
begin
tmpElement.setAttribute('value', 'somevalue', 0);
tmpFound := True;
break;
end;
end;
При обработке большого количества страниц жрет память до 1,5 Гб и потом выдает ошибку выделения памяти.
Подскажите, как
принудительно освобождать память не закрывая приложения и не ожидая по 10 минут?