タイトルに、深い意味はありません。
ちょっと、野暮用で、XNA で作られたプログラムの処理落ちの原因を調べてたら、奇妙な動作に遭遇。
何故か、メモリーが増えるはずの無い場所で、メモリーが確保されている! 新手のスタンドの攻撃か!?
簡単に説明すると、Dictionary 型に突っ込んだ値を持ってくるだけで、メモリー食ってる。こいつは、妙だ。
Dictionary 型なんて、何度も使ってるけどこんな事は初。
とりあえず、サクッとテストプログラムを作成。うは! メモリー確保してやがる。
まさか、3.0になってから、こうなった? と、一瞬、思ったけど、もう一つ、気になる点があったので、確認。ハーミットパー
今度は、メモリーは微動だにせず。了解。
そんな訳で、Dictionary 型のキーに列挙型を指定すると、その列挙型をキーにして渡す時に、メモリーとボクシングが発生する事が判明。
と、言う事で、Microsoft Connect にサクッと登録。
数日、放置していたら、状態が「終了 (外部)」になっていたので、3.1で治っている事を期待する。
あ、ちなみに、キーを byte とか int とかにして、列挙型をキャストして渡した場合は、無問題。
まぁ、だから、バグとして報告した訳だが。
ちょっと、野暮用で、XNA で作られたプログラムの処理落ちの原因を調べてたら、奇妙な動作に遭遇。
何故か、メモリーが増えるはずの無い場所で、メモリーが確保されている! 新手のスタンドの攻撃か!?
簡単に説明すると、Dictionary 型に突っ込んだ値を持ってくるだけで、メモリー食ってる。こいつは、妙だ。
Dictionary 型なんて、何度も使ってるけどこんな事は初。
とりあえず、サクッとテストプログラムを作成。うは! メモリー確保してやがる。
まさか、3.0になってから、こうなった? と、一瞬、思ったけど、もう一つ、気になる点があったので、確認。ハーミットパー
今度は、メモリーは微動だにせず。了解。
そんな訳で、Dictionary 型のキーに列挙型を指定すると、その列挙型をキーにして渡す時に、メモリーとボクシングが発生する事が判明。
と、言う事で、Microsoft Connect にサクッと登録。
数日、放置していたら、状態が「終了 (外部)」になっていたので、3.1で治っている事を期待する。
あ、ちなみに、キーを byte とか int とかにして、列挙型をキャストして渡した場合は、無問題。
まぁ、だから、バグとして報告した訳だが。