アプリケーションによって使用されるメモリを追跡する JavaScript の方法はありますか? メモリリークなどのデバッグに使用されるブラウザ拡張機能については考えていませんが、アプリケーションがメモリ消費を追跡し、メモリを解放するかどうかについて適切な決定を下せるようにするためです。
2 に答える
メモリを解放するかどうかについて適切な決定を下すことができるようにします。
JavaScript には、メモリを管理するための自動ガベージ コレクタがあります。手動でメモリを解放したり、ガベージ コレクターを呼び出したりすることはできません (たとえば、Java や c# の場合と同様)。
JS でのメモリ管理に関するコメンターには同意しますが、ECMAScript 6 には「WeakMaps」と呼ばれる興味深い機能があります。これは、まさにあなたが求めていたものではありませんが、関連しています。
「weakmaps を使用する標準的な例は、特定の DOM 要素に関連するオブジェクトを作成することです。たとえば、jQuery は、参照されている各 DOM 要素に対して 1 つずつ、オブジェクトのキャッシュを内部的に維持します。weakmap を使用すると、jQuery は自動的に解放されます。ドキュメントから削除されたときに DOM 要素に関連付けられたメモリ。」
http://www.nczonline.net/blog/2012/11/06/ecmascript-6-collections-part-3-weakmaps/
https://developer.mozilla.org/en-US/docs/JavaScript/ECMAScript_6_support_in_Mozilla