ホームページ ウェブフロントエンド jsチュートリアル JS ガベージ コレクション メカニズムとメモリ管理の簡単な分析

JS ガベージ コレクション メカニズムとメモリ管理の簡単な分析

Apr 04, 2018 pm 02:36 PM
javascript

この記事は主に JS のガベージ コレクションのメカニズムとメモリ管理の簡単な分析を紹介しています。編集者が非常に優れていると考えたので、参考として共有します。エディターをフォローして一緒に見てみましょう

ガベージ コレクション

JavaScript のガベージ コレクション メカニズムは非常にシンプルです。使用されなくなった変数を見つけて解放します。

ローカル変数は実行中にのみ存在します。関数の実行後は、ローカル変数が存在する必要はありません。ただし、すべての変数を判断するのはそれほど簡単ではないため、これらの変数をリサイクルするにはいくつかのメソッドを使用する必要があります

1 マークのクリア:

JavaScript で最もよく使用されるガベージ コレクションの方法は、変数が環境に入ると、その変数は「環境に入る」としてマークされ、その変数はその環境から出ると「出る」としてマークされます。一般的に、変数にアクセスする方法がないため、変数をクリアするのは環境によってマークされた変数を残すだけです。その後、ガベージ コレクターがメモリ クリーンアップ作業を完了します。

2 参照カウント:

この方法はあまり一般的ではありません。参照カウントの意味は、参照された値を記録することです。参照された回数が 0 になると、その値にアクセスする方法がなくなったことを意味します。

しかし、参照カウントには問題があります。例: この例では、Objecta と ObjectB が相互に引用されています。独自の属性、つまり、これら 2 つのオブジェクトの参照は 2 です。マークアンドスイープ戦略を使用する実装では、関数の実行後に両方のオブジェクトがスコープ外になるため、この相互参照は問題になりません。ただし、参照カウント戦略を使用する実装では、参照の数が 0 になることはないため、objectA と objectB は関数の実行後も存在し続けます。この関数が複数回呼び出される場合、大量のメモリがリサイクルされません

このような問題を回避するには、循環参照を排除するために使用されない場合は null を設定する必要があります


メモリ管理:


Web ブラウザに割り当てられる利用可能なメモリの量は、通常、デスクトップ アプリケーションに割り当てられるメモリの量よりも少ないことは誰もが知っています。この目的は主にセキュリティ上の理由で、JavaScript を実行している Web ページがシステム メモリをすべて使い切ってシステムがクラッシュするのを防ぐことです。メモリ制限の問題は、変数へのメモリの割り当てだけでなく、コール スタックやスレッド内で同時に実行できるステートメントの数にも影響します。

したがって、ページが占有するメモリ量を最小限に抑えることで、パフォーマンスを向上させることができます。メモリ使用量を最適化する最善の方法は、コードの実行に必要なデータのみを保存することです。データが役に立たなくなったら、その値を null に設定して参照を解放することをお勧めします。これを逆参照と呼びます。このアプローチは、ほとんどのグローバル変数とグローバル オブジェクトのプロパティに適用されます。次の例に示すように、ローカル変数は、実行環境を離れるときに自動的に逆参照されます。


function problem(){
var objectA = new Object();
var objectB = new Object();
objectA.someOtherObject = objectB;
objectB.anotherObject = objectA;
}
ログイン後にコピー

値の逆参照は、その値が占有しているメモリを自動的にリサイクルすることを意味するわけではありません。逆参照が実際に行うことは、次回実行時にガベージ コレクターによって再利用できるように、実行環境から値を取り出すことです。


関連する推奨事項:


Javaのガベージコレクションメカニズム、メモリ管理

JSのガベージコレクションメカニズムとメモリ割り当て

JavaScriptのガベージコレクションメカニズムとメモリリークの問題

以上がJS ガベージ コレクション メカニズムとメモリ管理の簡単な分析の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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

ホットAIツール

Undresser.AI Undress

Undresser.AI Undress

リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover

AI Clothes Remover

写真から衣服を削除するオンライン AI ツール。

Undress AI Tool

Undress AI Tool

脱衣画像を無料で

Clothoff.io

Clothoff.io

AI衣類リムーバー

Video Face Swap

Video Face Swap

完全無料の AI 顔交換ツールを使用して、あらゆるビデオの顔を簡単に交換できます。

ホットツール

メモ帳++7.3.1

メモ帳++7.3.1

使いやすく無料のコードエディター

SublimeText3 中国語版

SublimeText3 中国語版

中国語版、とても使いやすい

ゼンドスタジオ 13.0.1

ゼンドスタジオ 13.0.1

強力な PHP 統合開発環境

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開発ツール

SublimeText3 Mac版

SublimeText3 Mac版

神レベルのコード編集ソフト(SublimeText3)

大規模なメモリの最適化。コンピュータが 16g/32g のメモリ速度にアップグレードしても変化がない場合はどうすればよいですか? 大規模なメモリの最適化。コンピュータが 16g/32g のメモリ速度にアップグレードしても変化がない場合はどうすればよいですか? Jun 18, 2024 pm 06:51 PM

機械式ハード ドライブまたは SATA ソリッド ステート ドライブの場合、NVME ハード ドライブの場合は、ソフトウェアの実行速度の向上を感じられない場合があります。 1. レジストリをデスクトップにインポートし、新しいテキスト ドキュメントを作成し、次の内容をコピーして貼り付け、1.reg として保存し、右クリックしてマージしてコンピュータを再起動します。 WindowsRegistryEditorVersion5.00[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SessionManager\MemoryManagement]"DisablePagingExecutive"=d

Xiaomi Mi 14Proのメモリ使用量を確認するにはどうすればよいですか? Xiaomi Mi 14Proのメモリ使用量を確認するにはどうすればよいですか? Mar 18, 2024 pm 02:19 PM

最近、Xiaomiはスタイリッシュなデザインだけでなく、内部および外部にブラックテクノロジーを備えた強力なハイエンドスマートフォンXiaomi 14Proをリリースしました。この電話機は最高のパフォーマンスと優れたマルチタスク機能を備えており、ユーザーは高速でスムーズな携帯電話体験を楽しむことができます。ただし、パフォーマンスはメモリにも影響されますので、多くのユーザーがXiaomi 14Proのメモリ使用量を確認する方法を知りたいので、見てみましょう。 Xiaomi Mi 14Proのメモリ使用量を確認するにはどうすればよいですか? Xiaomi 14Proのメモリ使用量を確認する方法を紹介. Xiaomi 14Proスマホの[設定]にある[アプリケーション管理]ボタンを開きます。インストールされているすべてのアプリのリストを表示するには、リストを参照して表示するアプリを見つけ、それをクリックしてアプリの詳細ページに入ります。アプリケーションの詳細ページで

コンピューターのメモリ 8g と 16g には大きな違いがありますか? (8g または 16g のコンピューターメモリを選択してください) コンピューターのメモリ 8g と 16g には大きな違いがありますか? (8g または 16g のコンピューターメモリを選択してください) Mar 13, 2024 pm 06:10 PM

初心者ユーザーがコンピュータを購入するとき、8g と 16g のコンピュータメモリの違いに興味を持つでしょう。 8gと16gどちらを選べばいいでしょうか?そんなお悩みに対し、今日は編集者が詳しく解説します。コンピューターのメモリの 8g と 16g の間に大きな違いはありますか? 1. 一般的な家庭や通常の仕事の場合、8G の実行メモリで要件を満たすことができるため、使用中に 8g と 16g の間に大きな違いはありません。 2. ゲーム愛好家が使用する場合、現在大規模なゲームは基本的に 6g からであり、8g が最低基準です。現状では画面が2kの場合、解像度が高くてもフレームレート性能は上がらないため、8gでも16gでも大きな差はありません。 3. オーディオおよびビデオ編集ユーザーにとって、8g と 16g の間には明らかな違いがあります。

関係者によると、サムスン電子とSKハイニックスは2026年以降に積層型モバイルメモリを商品化する予定 関係者によると、サムスン電子とSKハイニックスは2026年以降に積層型モバイルメモリを商品化する予定 Sep 03, 2024 pm 02:15 PM

9月3日の当ウェブサイトのニュースによると、韓国メディアetnewsは昨日(現地時間)、サムスン電子とSKハイニックスの「HBM類似」積層構造モバイルメモリ製品が2026年以降に商品化されると報じた。関係者によると、韓国のメモリ大手2社はスタック型モバイルメモリを将来の重要な収益源と考えており、エンドサイドAIに電力を供給するために「HBMのようなメモリ」をスマートフォン、タブレット、ラップトップに拡張する計画だという。このサイトの以前のレポートによると、Samsung Electronics の製品は LPwide I/O メモリと呼ばれ、SK Hynix はこのテクノロジーを VFO と呼んでいます。両社はほぼ同じ技術的ルート、つまりファンアウト パッケージングと垂直チャネルを組み合わせたものを使用しました。 Samsung Electronics の LPwide I/O メモリのビット幅は 512

サムスン、HBM4メモリでの普及が期待される16層ハイブリッドボンディング積層プロセス技術検証完了を発表 サムスン、HBM4メモリでの普及が期待される16層ハイブリッドボンディング積層プロセス技術検証完了を発表 Apr 07, 2024 pm 09:19 PM

報告書によると、サムスン電子幹部のキム大宇氏は、2024年の韓国マイクロエレクトロニクス・パッケージング協会年次総会で、サムスン電子は16層ハイブリッドボンディングHBMメモリ技術の検証を完了すると述べた。この技術は技術検証を通過したと報告されています。同報告書では、今回の技術検証が今後数年間のメモリ市場発展の基礎を築くとも述べている。 DaeWooKim氏は、「サムスン電子がハイブリッドボンディング技術に基づいて16層積層HBM3メモリの製造に成功した。メモリサンプルは正常に動作する。将来的には、16層積層ハイブリッドボンディング技術がHBM4メモリの量産に使用されるだろう」と述べた。 ▲画像出典 TheElec、以下同 ハイブリッドボンディングは、既存のボンディングプロセスと比較して、DRAMメモリ層間にバンプを追加する必要がなく、上下層の銅と銅を直接接続する。

マイクロン:HBMメモリはウェーハ量の3倍を消費し、生産能力は基本的に来年に予約される マイクロン:HBMメモリはウェーハ量の3倍を消費し、生産能力は基本的に来年に予約される Mar 22, 2024 pm 08:16 PM

当サイトは3月21日、マイクロンが四半期財務報告書の発表後に電話会議を開催したと報じた。 Micron CEOのSanjay Mehrotra氏はカンファレンスで、従来のメモリと比較してHBMは大幅に多くのウエハを消費すると述べた。マイクロンは、同じノードで同じ容量を生産する場合、現在最も先進的なHBM3Eメモリは標準的なDDR5の3倍のウエハを消費し、性能の向上とパッケージングの複雑さの増大により、将来的にはHBM4のこの比率がさらに増加すると予想されていると述べました。 。このサイトの以前のレポートを参照すると、この高い比率は HBM の歩留まりの低さによる部分もあります。 HBM メモリは、多層の DRAM メモリ TSV 接続でスタックされており、1 つの層に問題があると、全体の層に問題が発生することを意味します。

Lexar が Ares Wings of War DDR5 7600 16GB x2 メモリ キットを発売: Hynix A-die パーティクル、1,299 人民元 Lexar が Ares Wings of War DDR5 7600 16GB x2 メモリ キットを発売: Hynix A-die パーティクル、1,299 人民元 May 07, 2024 am 08:13 AM

5月6日のこのウェブサイトのニュースによると、LexarはAres Wings of WarシリーズのDDR57600CL36オーバークロックメモリを発売しました。16GBx2セットは50元のデポジットで5月7日0:00に予約販売されます。 1,299元。 Lexar Wings of War メモリは、Hynix A-die メモリ チップを使用し、Intel XMP3.0 をサポートし、次の 2 つのオーバークロック プリセットを提供します: 7600MT/s: CL36-46-46-961.4V8000MT/s: CL38-48-49 -1001.45V放熱に関しては、このメモリ セットには厚さ 1.8 mm の全アルミニウム放熱ベストが装備されており、PMIC 独自の熱伝導性シリコン グリース パッドが装備されています。メモリは 8 つの高輝度 LED ビーズを使用し、13 の RGB 照明モードをサポートします。

インストールされているメモリが Windows 11 に表示されない インストールされているメモリが Windows 11 に表示されない Mar 10, 2024 am 09:31 AM

新しい RAM をインストールしたにもかかわらず Windows コンピューターに表示されない場合、この記事は問題の解決に役立ちます。通常、RAM をアップグレードすることでシステムのパフォーマンスが向上します。ただし、システムのパフォーマンスは、CPU、SSD などの他のハードウェアにも依存します。 RAM をアップグレードすると、ゲーム体験も向上します。一部のユーザーは、インストールされているメモリが Windows 11/10 に表示されないことに気づいています。このようなことが起こった場合は、ここで提供されているアドバイスを活用してください。インストールされている RAM が Windows 11 に表示されない インストールされている RAM が Windows 11/10 PC に表示されない場合は、次の提案が役に立ちます。取り付けられているメモリはコンピュータのマザーボードと互換性がありますか?バイオで

See all articles