Pular para o conteúdo principal

Pooling (Recursos Pesados)

Pooling é recomendado para objetos caros de criar (HTTP/RPC, componentes stateful, streams). O Nidus mantém um registry global de pools.

Registrar pools

uses
Nidus;

begin
GetNidus.UsePools<TMemoryStream>(256);
end.

Uso seguro (Acquire/Release automático)

GetNidus.WithPool<TMemoryStream>(
procedure (S: TMemoryStream)
begin
S.Clear;
// usar
end
);

Componentes (ex.: ACBr)

Para TComponent, o overload de UsePools aceita Owner e Reset:

GetNidus.UsePools<TACBrNFe>(32, nil,
procedure (A: TACBrNFe)
begin
// reset
end
);