タグ

Cとpoolingに関するakaneharaのブックマーク (1)

  • メモリプール

    CようにGC(ガベージコレクション)を持たない言語ではヒープ領域から確保したメモリの解放はプログラマの責任で行う必要がある。 しかし、実際にCやC++でプログラミングしたことがあるならわかるように確保したメモリを適切なタイミングで 解放するのはとても難しいとまでは言わないまでもあまり簡単なことではない。 単にfreeを呼び出すのを忘れたり、もしくはリストや木のような少し複雑なデータ構造を扱う際に 割り当てられたメモリを適切に解放できずにリークしてしまうようなことは普通に起こりうる。 モダンなOSではプログラム終了後にそのプログラムに割り当てられたメモリをOS側で解放してくれるので、 走らせてすぐ終了するようなプログラムではこのようなメモリリークは特に問題にならないこともあるが、 例えばWebサーバのように常時動き続けるようなソフトウェアでのメモリリークは致命的な問題を引き起こす。 この問題

  • 1