В Delphi В проекте XE10 Datasnap REST для передачи наборов данных на сторону клиента используется TFDJSONDataSets.
Жизненный цикл: Сервер
Проблема заключается в том, что использование памяти сервера увеличивается для каждого вызова, и я не могу найти решение для освобождения памяти результатов наборов данных.
Пример:
Сторона сервера:
function TServerMethods1.GetSomeDataSet: TFDJSONDataSets;
var mt: TFDMemTable;
begin
mt:= TFDMemTable.Create(nil);
result:= TFDJSONDataSets.Create;
//load mt data...
TFDJSONDataSetsWriter.ListAdd(result, mt);
end;
Сторона клиента
function TClientModule1.GetSomeDataSet: TFDMemTable;
var ds: TFDJSONDataSets;
begin
result:= TFDMemTable.Create(nil);
ds:= ServerMethodsClient.GetSomeDataSet();
result.AppendData(TFDJSONDataSetsReader.GetListValue(ds, 0));
result.Open;
end;
Каждый вызов TServerMethods1.GetSomeDataSet увеличивает использование памяти сервером приложений. Как правильно это исправить?
Спасибо