Singleton в Python. Синглтон – это шаблон, который ограничивает создание экземпляра класса одним объектом. С помощью декоратора ты можешь определить класс как синглтон. Таким образом класс либо возвращает существующий экземпляр класса, либо создает новый экземпляр. Этот декоратор можно добавить к любому объявлению класса, и он обеспечит создание не более одного экземпляра. Любые последующие вызовы вернут уже существующий экземпляр.
Шаблон Singleton предоставляет механизм создания одного и только один экземпляра объекта, и предоставление к нему глобальную точку доступа. Поэтому, Singletons обычно используются в таких случаях, как ведение журнала или операции с базой данных, диспетчера очереди печати и многих других, где существует необходимость иметь только один экземпляр, который доступен во всем приложении, чтобы избежать конфликтующих запросов на один и тот же ресурс. Например, мы можем захотеть использовать один объект базы данных для выполнения операций с БД для обеспечения согласованности данных или один объект класса ведения журнала для нескольких служб, чтобы последовательно выгружать сообщения журнала в определенный файл журнала.
Вкратце, цель шаблона Singleton заключаются в следующем:
• Обеспечение создания одного и только одного объекта класса
• Предоставление точки доступа для объекта, который является глобальным для программы
• Контроль одновременного доступа к ресурсам, которые являются общими
1 минута
30 апреля 2022