É seguro usar a using
instrução em um objeto nulo (potencialmente)?
Considere o seguinte exemplo:
class Test {
IDisposable GetObject(string name) {
// returns null if not found
}
void DoSomething() {
using (IDisposable x = GetObject("invalid name")) {
if (x != null) {
// etc...
}
}
}
}
É garantido que Dispose
será chamado apenas se o objeto não for nulo e eu não receberei um NullReferenceException
?