以前から何度か取り上げているネタですが,実際のどれぐらい起きるものか気になって試してみました. 下のように延々と new と Dispose を繰り返しているスレッドをランダムに Abort させてみると,非常に小さい確率ですが,new されたオブジェクトの Dispose 呼出しが行われないという現象が発生します. while (true) { using (MyDisposableObject obj = new MyDisposableObject()) { } }手元の環境で試してみたところ,20,000 回の試行で 4 回ほど発生しました.0.02 % ぐらいです.これは using 構文の中身が空の場合の結果なので,実際にはもう何桁か発生確率は下がるかと思います. ソースコードはこちら. http://www.dwahan.net/nyaruru/hatena/UsingTes