- 1 名前:名前は開発中のものです。 [2022/05/22(日) 19:53:26.78 ID:923jZ1Ck.net]
- プログラマーがゲームを作る上で避けては通れないバグ、フラグメンテーション。
ファイルとメモリーのデータのやり取りが増えれば増えるほど発生して、 メモリーを圧迫して最後には発生原因不明のバグを発生させる恐怖のバグ。 そんなフラグメンテーションの対策を行うための雑談スレッドです。
- 5 名前:名前は開発中のものです。 [2022/05/22(日) 20:33:49.45 ID:923jZ1Ck.net]
- malloc全面禁止が出来れば楽なんだがな
フラグメンテーションが起きようも無くなる まあ、簡単な話ではないけどな
- 6 名前:名前は開発中のものです。 [2022/05/22(日) 20:45:11.73 ID:923jZ1Ck.net]
- 最初にmallocした領域を最後まで使い続ける手もあるな
途中でreallocを使わなければ、どうって事もない話だ
- 7 名前:名前は開発中のものです。 [2022/05/22(日) 21:04:00.00 ID:923jZ1Ck.net]
- 要は、メモリーに隙間を空けなければ良いだけだしな
- 8 名前:名前は開発中のものです。 [2022/05/22(日) 21:08:32.45 ID:923jZ1Ck.net]
- 同じメモリーを余裕を持って取得し、最後まで使い回す
どのぐらいの余裕が必要かは考えれば出てくると思われる 例えば、TCP/IPのパケットの場合は、64kが最大だから、 このサイズでメモリーを取得して使い回せば良い
- 9 名前:名前は開発中のものです。 [2022/05/22(日) 21:15:30.04 ID:923jZ1Ck.net]
- 取得したメモリー領域をいちいち全部解放する方法もあるよな
これなら隙間の空きようも無い ただ、メモリーの取得方法や環境によっては、 取得した順番とは真逆に解放する必要があるケースがあり得るから注意する事
|

|