Loading article…
コンピュータ サイエンス において、結合はメモリ管理の一部であり、コンピュータ メモリの 2 つの隣接する空きブロックを結合します。
プログラムが特定のメモリ ブロックを必要としなくなった場合、これらのメモリ ブロックを解放できます。結合を行わないと、これらのメモリ ブロックは、たとえ隣接していても、元の要求サイズのまま互いに分離したままになります。後続のメモリ要求で、これらの (サイズが不均等である可能性のある) 解放されたブロックの整数個では対応できないメモリ サイズが指定された場合、これらの隣接する解放されたメモリ ブロックをこの要求に割り当てることはできません。結合を行うと、隣接する解放されたメモリ ブロックを境界なしで連続するように設定することでこの問題が軽減され、その一部またはすべてを要求に割り当てることができます。
他の技術の中でも、外部の断片化を減らすために結合が使用されますが、完全に効果的というわけではありません。結合は、ブロックが解放されるとすぐに実行することも、しばらく後まで延期することもできます (遅延結合と呼ばれます)。また、まったく実行されない場合もあります。
凝集とヒープ圧縮のような関連技術はガベージコレクションで使用することができます。[1]
参照
参考文献
- ^ Megida, Dillion. 「JavaScript の Nullish Coalescing Operator とは何か、またどのように役立つのか」。Freecodecamp。
外部リンク
- メモリ管理リファレンス、初心者向けガイド割り当て
