ColdFusionのCFCでのごみ収集
-
20-09-2019 - |
質問
私はアプリケーションスコープ内singletoneオブジェクトとしてCFCを有している。
方法の一つは、大量のデータ処理に使用し、定期的に「Javaヒープ領域」のエラーが発生している。
編集メソッド内のすべての変数は、VARスコープなので、invokationが終了したときには、オブジェクトのスコープに保管すべきではありません。
これは、Javaの人々のために少しばかな質問することができますが、私は、Javaのガベージコレクタは、CFCメソッドのメモリをクリーンアップの方法を知りたいのです:全体の要求が終了した場合にのみ、または多分右の各メソッド/関数の呼び出しの後の
それは私が可能な最適化の一つとして、いくつかに私の大きな方法を分割できるようにすることができますので、2番目のオプションは、興味深いものです。
解決
それがうまくColdFusionは、あなたがそれを手動で起動してみても、現在のリクエストが処理された後まで、ガベージコレクションを実行しないであろうことが知られています。
他のヒント
Javaのリリースリソースオブジェクトへの参照はありません後。あなたが実際にそれインスタンス変数とクラス変数を解放することはありませんという意味ではシングルトンアプリケーションスコープのオブジェクトを持っています。あなたのコード内で手動でこれを行います除きます。あなたはより多くのあなたのコードを最適化する方法を助言を得るためにいくつかのコードを表示する必要があります。
所属していません StackOverflow