Assim como na linguagem Delphi nativa o scripter também trabalha com os objetos seguindo seu ciclo de vida. Ou seja, fica a cargo do desenvolvedor do script tanto a criação como uso como “destruição” do objeto envolvido, para que o mesmo não fique constando em memória.
A sugestão quanto a isso é que os objetos criados sejam utilizados e eliminados utilizando estruturas de try… finally.
Abaixo um exemplo de código propondo a criação de um TStringList, sua utilização e sua eliminação através do método free. A falta da chamada ao método free resulta no objeto ainda em memória depois da utilização do script e isso pode gerar problemas quanto ao uso de memória pelo software.
uses Classes; // unit que tem a definição da classe TStringList var str : TStringList; //declaração da variável begin str := TStringList.Create; // criação do objeto try str.add('Testando'); //utilização do objeto str.add(' ciclo de vida'); str.add(' de objetos no script.'); ShowMessage(str.Text); finally str.free; //destruição/eliminação do objeto end; end;
Para facilitar ainda mais o entendimento, foi produzido um vídeo sobre este conteúdo. Para acessá-lo, utilize o link abaixo: