¿Es seguro usar la using
declaración en un objeto (potencialmente) nulo?
Considere el siguiente ejemplo:
class Test {
IDisposable GetObject(string name) {
// returns null if not found
}
void DoSomething() {
using (IDisposable x = GetObject("invalid name")) {
if (x != null) {
// etc...
}
}
}
}
¿Se garantiza que Dispose
se invocará solo si el objeto no es nulo y no obtendré un NullReferenceException
?