Как общая политика, я бы поставил вопрос с ног на голову:
Есть ли причина, по которой я не должен избавляться от этих конкретных предметов
Если класс реализует IDisposable
, ваша задача - избавиться от него.
Во многих случаях, хотя объект мало что делает, когда вы им распоряжаетесь, но это не значит, что вы не должны вызывать Dispose для него. Если вы когда-нибудь обновитесь до новой версии среды выполнения .NET, это может измениться.
Хорошо, позвольте мне уточнить, что я здесь сказал.
Конечно, я не говорю, что вы должны просто вызывать Dispose
для всех без исключения объектов, которые реализуют IDisposable
. Вопрос в том, это ваш объект . Если вы его построили, это ваша ответственность.
Если вам дали объект, предположите, что он не ваш, если только вы не требуете, чтобы объект был отдан, а не просто временно передан вам.
И, конечно, есть и другие исключения, но как правило , принадлежащие вам объекты, реализующие IDisposable
, избавляются от них, когда вы закончите.