「分かりそう」で「分からない」でも「分かった」気になれるIT用語辞典イメージぴよ画像「分かりそう」で「分からない」でも「分かった」気になれるIT用語辞典

ガベージコレクション

pointこの用語のポイント

point機能だよ

point使っていないメモリを解放するよ

スポンサーリンク

簡単に書くよ

ガベージコレクション(英:garbage collection)とは

プログラムで使っていないメモリを解放する機能のこと
です。


image piyo

詳しく書くよ

順番に見ていきましょう。
まずは予備知識として「ガベージコレクタ」について説明します。
「そんなの説明されなくても知ってるよ!」な人は適当に読み飛ばしてください。

ガベージコレクタは「定期的にメモリを解放してくれる管理人さん」です。

ガベージコレクション

人間様の場合、お仕事をするときは、机の上に書類や筆記用具を広げます。

ガベージコレクション2

お仕事が終わったら、机の上を片付けます。

ガベージコレクション3

プログラムも同じです。

プログラムが動くときはメモリを使います。
メモリの上に、お仕事道具を広げるのです。

ガベージコレクション4

お仕事が終わったら、メモリの上を片付けます。

ガベージコレクション5

これが本来の形ですが、実はお片付けが苦手なプログラムがいます。
やったらやりっぱなし、散らかしたら散らかしっぱなしの残念なやつです。

ガベージコレクション6

散らかしっぱなしでは他のプログラムに迷惑がかかります。
仕事をすればするほど、メモリの上がどんどん汚くなりますからね。
いずれ新しいお仕事道具を広げられなくなるでしょう。

ガベージコレクション7

それを避けるために、お片付けが苦手なプログラムは自分のポケットマネーで管理人さんを雇っている場合があります。
管理人さんは、プログラムが散らかしっぱなしにしたお仕事道具を片付けるのが仕事です。

ガベージコレクション8

これで安心ですね。
いくらプログラムがメモリの上を散らかしても管理人さんが片付けてくれます。
お仕事の後でもメモリは綺麗になっているでしょう。

この

メモリの上を綺麗にしてくれる管理人さん

がガベージコレクタです。

ガベージコレクション9

以上を踏まえて、ガベージコレクタがやっているお仕事で

使っていないメモリを解放する機能

が「ガベージコレクション」です。

ガベージコレクション10

例えば、そうですね。

プログラムがメモリの上に何かを乗せたとしましょう。

ガベージコレクション11

綺麗好きなプログラムの場合、使い終わったらメモリの上から回収します。

ガベージコレクション12

残念なプログラムの場合、使い終わってもそのまま放置しちゃいます。

ガベージコレクション13

邪魔ですよね?
もう使わないのにメモリ上にあっても仕方がありません。

そこで登場するのがガベージコレクタさんです。

ガベージコレクタさんは、ふらふらと巡回しています。

ガベージコレクション14

そして、メモリ上に「あれ?これって、もう誰も使っていないじゃん」なものを見つけたら回収していってくれます。

ガベージコレクション15

これでメモリの上は綺麗になりました。

めでたし、めでたし。

ガベージコレクタさんはメモリ上の使っていないものを回収してくれました。
そのお陰でメモリの上は綺麗になりましたよね。

このような

使っていないメモリを解放して、メモリの上を綺麗にする機能

がガベージコレクションです。

なお「ガベージコレクション」は「ガーベジコレクション」や「ガーベージコレクション」などと表現される場合も あります。
微妙な違いが生じているのは、英語を無理やりカタカナ読みしているからです。
英語で書くと「garbage collection」です。
長音の位置は、あまり気にしなくて良いですよ。


image piyo2

一言でまとめるよ

まぁ「ガベージコレクション」って単語が出てきたら「使っていないメモリを解放する機能なんだな~」と お考えください。

一番上に戻るよ
スポンサーリンク
書籍画像038
書籍画像063

おまけ

■訳してみるよ

「garbage(ガベージ)」の意味は「ごみ」とか「くず」とか「がらくた」とかです。
「collection(コレクション)」の意味は「収集」とか「回収」とか「収集物」とかです。
何となく くっつけると

ごみ収集

となります。





書籍画像
わわわ説明術コラム
宣伝だよ
わかばちゃんとつくって、壊して、直して学ぶ NewSQL入門
優れたエンジニアがコミュニティの中でしていること
「分かった!」と思わせる説明の技術 知識ゼロの相手にも伝わるようになる本【Audible】