Утилизация одиночного объекта - PullRequest
1 голос
/ 16 октября 2010

Я немного поигрался с объектами POCO и EntityFramework.Из-за этого я должен написать свой собственный контекст и репозиторий.Я хотел бы, чтобы все репозитории использовали один и тот же экземпляр контекста, чтобы изменения были распределены между ними.Чтобы облегчить это, я закодировал свой контекст как синглтон.Таким образом, вместо получения нового контекста и последующей передачи его в contstructor для всех моих репозиториев, я могу просто использовать contstructor по умолчанию для получения экземпляра singleton.

У меня такие вопросы:нужно утилизировать синглтон?

Могу ли я просто оставить его и положиться на сборщик мусора?

Если мне нужно утилизировать его, как мне это сделать?

это приемлемая практика или по какой-то причине я не должен использовать синглтон, о котором я не знаю?

1 Ответ

0 голосов
/ 16 октября 2010

Если вы покинете наш класс, GC утилизирует его только тогда, когда ваша программа будет закрыта.Относительно Do I need to dispose of a singleton? это ваша личная потребность.Если вы не хотите воссоздавать свой экземпляр объекта, создайте метод DestroyInstance и установите там значение _instance = null.Но я думаю, что Синглтон - это осознание того, что твой экземпляр должен уходить всегда ..

...