Каков наилучший способ использования объектов Disposable, если методы Constructor и Process могут вызывать исключения? Обычно я предпочитаю одну из приведенных ниже реализаций.
попробуйте -поймать окружение с помощью блока
try
{
using (Disposable dispObj = new Disposable())
{
dispObj.Process();
}
}
catch (Exception ex)
{
// Do something
}
попробуйте -поймать -блок окончательно.
Disposable dispObj2 = null;
try
{
dispObj2 = new Disposable();
dispObj2.Process();
}
catch (Exception ex)
{
// Do something
}
finally
{
if (dispObj2 != null)
{
dispObj2.Dispose();
}
}
ОБНОВЛЕНИЕ:
Снова:«предполагая, что методы Constuctor и Process могут генерировать исключение» . Я действительно не понимаю, почему никто не заботился об исключениях в своих ответах.