¿Puedes disponer de múltiples objetos dentro de un bloque de uso?
¿Cómo cuidar que se eliminen varios objetos en una declaración de uso?
Código de muestra
using(MyClass obj = new MyClass())
{
MyOtherClass objOC= new MyOtherClass()
TextReader objTR = new StringReader(...);
// other code
}
MyClass obj
se eliminará al final del bloque de uso, pero entonces, ¿qué pasa conMyOtherClass objOC
yTextReader objTR
. Por lo que sé, no se desecharán, ¿así que debería tener un bloque de Uso anidado allí, como este a continuación? Necesitaré un monitor de pantalla ancha real si aumenta el número de objetos
¿Esto es correcto abajo?
using(MyClass obj = new MyClass())
{
using (MyOtherClass objOC= new MyOtherClass())
{
using (TextReader objTR = new StringReader(...))
{
//code using all three objects
}
}
// other code using just `MyClass obj`
}
MyClass y MyOtherClass ambos implementanIDisposable