あるコントロールにグラフィックを表示する必要があるとしましょう。しかし、ある条件に基づいて切り替えられる 3 つの画像があります。リソース ファイルに 3 つのビットマップが追加されます。
そのため、ResourceManager.GetObject を呼び出してそれらを取得します。
問題は、次のようにする必要があるということです。
- 画像を切り替える必要があるたびに、GetObject を呼び出して画像を取得し、コントロールに割り当てたり、
- 最初に各画像の GetObject の結果を保持して、GetObject への呼び出しが 3 回だけになるようにします。代わりに、変数から画像を割り当てます。
1) を行うと、CLR Profiler で表示すると、多くの GC ハンドルが生成されるようです。2)の悪い副作用を知りたい。
どうもありがとう。