Effective C# 3rd 読書メモ 41 高価なリソースのキャプチャを避ける

クロージャとキャプチャされた変数は、変数のスコープの基本原則の例外である。クロージャは境界づけられた変数を格納したオブジェクトを作り出す。これらの変数の生存期間は驚くほど長いことがある。

この挙動は、変数がメモリを消費しているだけである場合にはさほど気にする必要はないが、IDisposableを実装するような高価なリソース(ファイル、DB接続等)である場合には注意が必要である。

コメントを残す