DB
TUniPoolRecQuery = recordюзать так:
strict private
FDBQuery: TUniQuery;
public
class operator Initialize(out ADest: TUniPoolRecQuery);
class operator Finalize(var ADest: TUniPoolRecQuery);
property DBQuery: TUniQuery read FDBQuery write FDBQuery;
end;
{ TUniPoolRecQuery }
class operator TUniPoolRecQuery.Finalize(var ADest: TUniPoolRecQuery);
begin
DBPool.FreeQuery(ADest.FDBQuery)
end;
class operator TUniPoolRecQuery.Initialize(out ADest: TUniPoolRecQuery);
begin
ADest.FDBQuery := DBPool.GetQuery;
end;
var PoolRec: TUniPoolRecQuery;
PoolRec.DBQuery...
try/finally не нужен. при заходе в зону видимости запись инициализируется, при выходе - финализируется, проверил. один раз и то и то