2011-03-26 3 views
2

В моем приложении каждый арендатор имеет собственный контейнер StructureMap.StructureMap Disposing Container

Во время выполнения экземпляры арендатора могут быть отключены или перезапущены. Есть ли уборка, которую я должен делать (например, вызов IContainer.Dispose), или я должен просто позволить Garbage Collection сделать это?

У нас есть несколько экземпляров singleton, которые реализуют IDisposable. В идеале мы должны вызвать Dispose на них до утилизации контейнера. Я знаю, что это делается автоматически в вложенном контейнере, но не уверен в стандартном контейнере?

Спасибо,

Бен

ответ

5

Вы должны вызвать Dispose на контейнере, который утилизирует кэшированные экземпляры для вас.

+0

Отлично, спасибо за разъяснение. –

+1

+1 за вклад в «распределенную документацию» структурной карты ... – silasdavis

+0

Cheers, @silasdavis –

0

Звоните на контейнеры.

Вы никогда не должны «просто позволить сборщику мусора выполнять свою работу». Смотрите мой ответ на это сообщение, чтобы понять, почему:

Is it bad practice to depend on the garbage collector

Смежные вопросы