ホームページ  >  記事  >  ウェブフロントエンド  >  メモリリークを引き起こす操作は何ですか?

メモリリークを引き起こす操作は何ですか?

hzc
hzcオリジナル
2020-06-28 13:21:052619ブラウズ

メモリ リークを引き起こす操作は次のとおりです: 1. setTimeout の最初のパラメータで関数の代わりに文字列が使用されている場合、メモリ リークが発生します; 2. クロージャ、コンソール ログ、ループ [2 つのオブジェクト間の相互に参照および保持されるとサイクルが発生し、メモリ リークが発生します。

メモリリークを引き起こす操作は何ですか?

メモリ リークとは、所有または必要がなくなった後も存続するオブジェクトを指します。
ガベージ コレクターはオブジェクトを定期的にスキャンし、各オブジェクトを参照する他のオブジェクトの数をカウントします。オブジェクトの参照が 0 である (他のオブジェクトがそれを参照していない) 場合、またはオブジェクトへの参照が循環のみである場合、オブジェクトのメモリを再利用できます。
setTimeout の最初のパラメータで関数ではなく文字列を使用すると、メモリ リークが発生します。
クロージャ、コンソールログ、ループ(2つのオブジェクトが相互に参照し保持する場合、ループが生成されます)

推奨チュートリアル:「JSチュートリアル

以上がメモリリークを引き起こす操作は何ですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。