Есть ли какие-нибудь советы о том, как мне обращаться с последовательностями объектов IDisposable
?
Например, у меня есть метод, который строит последовательность IEnumerable<System.Drawing.Image>
, и в какой-то момент мне нужно будетобъекты вручную, потому что в противном случае это может привести к некоторым утечкам.
Теперь, есть ли способ привязать вызов Dispose()
к действиям сборщика мусора, потому что я хочу, чтобы эти объекты располагались прямо в момент, когда они больше не доступен из других частей кода?
** Или, может быть, вы могли бы посоветовать мне другой подход? **
Как правило, этопохоже, такая же проблема, как и, например, в неуправляемых C++
без общих указателей , где вы можете иметь метод:
SomeObject* AllocateAndConstruct();
, а затем вы не можетебудьте уверены, когда его утилизировать, если вы не используете кодовые контракты или не указываете что-либо в комментариях.
Я полагаю, что ситуация с одноразовыми объектами примерно такая же, но я надеюсь, что есть подходящийрешение дляр это.