ReleaseStringList
Разные функции
Описание
Освобождает список строк, ранее возвращенный другой функцией API (например, CheckFileCompliance). После вызова дескриптор StringListID недействителен и его нельзя передавать в GetStringListCount или GetStringListItem
Синтаксис
Delphi
Function TPDFlib.ReleaseStringList(StringListID: Integer): Integer;
ActiveX
Function PDFlib::ReleaseStringList(StringListID As Long) As Long
DLL
int DLReleaseStringList(int InstanceID, int StringListID);
Параметры
| StringListID | ID освобождаемого списка строк, ранее возвращённого функцией-производителем |
|---|
Возвращаемые значения
| 0 | StringListID is invalid or does not reference a string list owned by this instance. |
|---|---|
| 1 | Список успешно освобождён |
Примечания
Списки строк принадлежат экземпляру PDFlib, который их создал. Они освобождаются автоматически при уничтожении экземпляра, поэтому явное освобождение обычно необязательно. Вызывайте ReleaseStringList в долгоживущих процессах, порождающих много списков (например, CI-воркер, валидирующий сотни PDF подряд), чтобы удерживать потребление памяти ограниченным
Пример
// Validate many files in a loop, releasing each result list as soon as it has been logged
var
I, Issues, Count, J: Integer;
begin
for I := 0 to Files.Count - 1 do
begin
Issues := PDF.CheckFileCompliance(Files[I], '', 1, 0);
if Issues <> 0 then
begin
Count := PDF.GetStringListCount(Issues);
for J := 1 to Count do
WriteLn(Files[I], ' : ', PDF.GetStringListItem(Issues, J));
PDF.ReleaseStringList(Issues);
end;
end;
end;