関数スコープで宣言された変数が占めるメモリは、関数スコープを離れた後にクリアされますか?
質問する
131 次
3 に答える
0
はい、もちろん、関数を実行するとメモリがクリアされます
于 2012-09-03T19:18:20.127 に答える
0
はい、スコープを失うと、ガベージコレクションのマークが付けられます。その後、必要に応じてガベージコレクションが開始されますが、すぐには実行されない場合があります。ただし、create_functionによって作成された関数はこの対象ではなく、メモリリークを引き起こす可能性があります。5.3以降、より長いスクリプト用の実際のガベージコレクションもあります。詳細はこちらをご覧ください。
于 2012-09-03T19:20:41.260 に答える
0
すぐにではありません。ほとんどのGCされた言語は、ヒープスペースの制約のために必要であると見なされた場合、または実行中に他に何もすることがない場合は戦略に応じて、バーストで「収集」を行います。
于 2012-09-03T19:23:12.763 に答える