Coleta de lixo em ColdFusion CFC
-
20-09-2019 - |
Pergunta
Eu tenho um CFC como singletone objeto no escopo do Aplicativo.
Um dos métodos é usado para maciços processamento de dados e, periodicamente, faz com que o "Java heap space" erros.
EDITAR Todas as variáveis dentro do método VAR-escopo, de modo que não deve ser mantido no âmbito do objecto quando invokation terminou.
Ele pode ser um pouco idiota pergunta para Java pessoas, mas eu gostaria de saber como o Java coletor de lixo, limpa o CFC métodos memória:apenas quando todo o pedido termina, ou talvez direita depois de cada método/função invokation?
A segunda opção é interessante, pois permite-me de dividir a minha grande método para poucos, como um dos possíveis otimizações.
Solução
é bem conhecido que o coldfusion não efectuar a recolha de lixo, até depois que o atual pedido foi processado, mesmo se você tentar invocar manualmente.
Outras dicas
O Java libera recursos quando não houver referência ao objeto.Você tem singleton âmbito de aplicação do objeto que, na verdade, significa que ele nunca irá liberá-lo variáveis de instância e variáveis de classe.Exceto que você vai fazer isso manualmente no código.Você deve mostrar o código para obter mais informa como otimizar o seu código.