Здравствуйте, Sinix, Вы писали:
S>Здравствуйте, AndrewVK, Вы писали:
AVK>>Не?
S>S>static TReturn Using<TValue, TReturn>(Func<TValue> val, Func<TValue, TReturn> callback) {...}
S>
S>тогда уж.
S>Иначе первый же залетевший дятел одно исключение — и утёкший ресурс
А можно пояснить ??
Вот есть метод
static TReturn Using<TValue, TReturn>(this TValue val, Func<TValue, TReturn> callback) where TValue: IDisposable
{
using(val) { return callback(val); }
}
типичное использование, ну например так:
var fileSize = new FileStream(...).Using(stream => stream.Length);
как тут возможна утечка ?