>>432
例えばC言語でグラフを実装する時も生のポインタのみで実装されることはありません
なぜなら各ノードのメモリを解放するタイミングがわからなくなるためです
そこで主に三つの方法が取られます
一つは各ノード一覧を配列などで持っておくとともに定期的にルートから到達可能か到達フラグを用意します
そしてノード一覧の中で到達フラグが立っていないものをメモリ解放します
この方法の欠点は4つあり
(1) ノード一覧を管理する配列が別途必要となる
(2) 到達フラグが必要となる
(3) 定期的に到達可能かを調べる必要がある
(4) 使われなくなったノードがすぐには解放されない
もう一つの方法は定期的コピー方式です
ルートから到達可能な部分を定期的に別の場所にコピーします
コピーされなかった部分が到達できない使われていない部分なのでまとめて解放となります
この方法の欠点は
(1) この方法も定期的な実行が必要となる
(2) メモリ空間が2倍必要となる
(3) 使われてる全体が定期的にメモリコピーされる負荷
(4) 使われなくなったノードがすぐには解放されない
残りの方法は参照カウンタ方式です
おなじみなので略します
いずれの方法も様々な欠点があります
このグラフのノード解放問題は
ガベージコレクションを必要とするプログラミング言語にそのまま当てはまります
GCの負荷コストを理解していただけましたでしょうか?
探検
次世代言語26 TypeScript Swift Go Kotlin Nim
■ このスレッドは過去ログ倉庫に格納されています
449デフォルトの名無しさん
2022/07/25(月) 16:06:38.58ID:LxBh6KBX■ このスレッドは過去ログ倉庫に格納されています
ニュース
- 【高市首相】「日本人が日本各地を旅行するのも大切」 中国からの渡航自粛巡り ★2 [ぐれ★]
- 【高市首相】「日本人が日本各地を旅行するのも大切」 中国からの渡航自粛巡り ★3 [ぐれ★]
- 統合中学の校名案「桜花」 特攻機名と重なり波紋 福岡・大牟田……「生徒が純真に考えた」と賛成意見も市民団体などが疑問の声 [少考さん★]
- フィンランド首相、「つり目」投稿問題で日本向けに「心からお詫び」 ★4 [どどん★]
- 【東京・赤坂の“個室サウナ店夫婦死亡火災” 】妻を守るため…夫が妻に覆いかぶさって倒れる [ぐれ★]
- 【国保逃れ】「国保から社保へ切り替え保険料を抑える手口を指南する団体」の理事に維新の会の議員 [雑用縞工作★]
- (´・ω・`)おはよ
- 【速報】フィンランド人、日本人に続々と宣戦布告www [793117252]
- 【画像】ホリエモン、限界突破wwwwwwwwwwwwwwww
- お前ら粗品嫌いなんか?🥺
- 【移住】日本の外国人在留資格厳格化。 企業するなら資本金500万から3000万、日本語ペラペラ職員1人の雇用必須に [663277603]
- NGワード サウナ…と
