У меня проблемы с пониманием использования на Синглтоне.Я понимаю, что при использовании одноэлементного шаблона, один экземпляр класса создается и используется всеми пользователями.Однако не приведет ли это к замедлению работы приложения для пользователей, которые используют несколько ресурсов (скажем, несколько тысяч пользователей) в данный момент?
Например,Если один из моих классов обслуживания «Sendmail» является одноэлементным, то в контейнере IOC будет создан только один экземпляр этого класса.Теперь этот экземпляр будет доступен всем текущим пользователям, использующим этот ресурс.Теперь, если несколько пользователей пытаются отправить электронную почту в одно мгновение, все запросы будут ждать в очереди, поскольку создается только один экземпляр Sendmail, не заставит ли это пользователей ждать отправки своего электронного письма?Это будет очень плохой опыт для пользователей.То же самое касается подключения к базе данных.Тогда почему рекомендуется использовать Singleton вместо прототипа?
Пожалуйста, помогите мне устранить мою путаницу.Заранее спасибо.