More C++ Idioms2009/10/10 08:56

雲は、最近、非常に大きなメモリを必要とするコードに取り組んでいます。ただ、必要とするメモリ領域を単純に vector で確保していると、スコープアウトした後でも virtual Memory の Virtual Size が減らないことに気がつきました。これは、通常はあまり気にならないのですが(メモリが足りないことがないため)、CreateDIBitmap を呼び出したときにメモリが足りなくて正常に動作しなくて困りました。ということで、いろいろと、調べていたのですが、空にして最小化を使うと上手く解放されることを教えてもらいました。あまり、みんな困ってないのかもしれませんが、参考のため以下にURLを書いておきますので、興味があれば(困ったときには)見てみるといいかもしれません。

More C++ Idioms

http://ja.wikibooks.org/wiki/More_C%2B%2B_Idioms

空にして最小化(Clear-and-minimize)

http://ja.wikibooks.org/wiki/More_C%2B%2B_Idioms/%E7%A9%BA%E3%81%AB%E3%81%97%E3%81%A6%E6%9C%80%E5%B0%8F%E5%8C%96(Clear-and-minimize)