Meaning
A singleton class that ensures only one instance exists and initializes its value attribute to zero.
Primary Function
Ensures a class has only one instance and provides a global point of access to it, initializing the instance's value attribute to zero.
Communicative Purpose
Communicates the intent to define a singleton service class with an initial zero-valued attribute.
Pattern
@singleton class {ClassName}: def __init__(self): self.{attr} = {value}
Core Structure
@singleton class {ClassName}: def __init__(self): self.{attr} = {value}
Função primária
Ensures a class has only one instance and provides a global point of access to it, initializing the instance's value attribute to zero.
Propósito comunicativo
Communicates the intent to define a singleton service class with an initial zero-valued attribute.
Situações de gatilho
When a single shared instance of a service or manager is needed, e.g., for logging, configuration, or hardware access.
Contextos
Used in Python applications requiring a singleton service, such as a logging service, configuration manager, or hardware abstraction layer.
Padrão
@singleton class {ClassName}: def __init__(self): self.{attr} = {value}
Estrutura central
@singleton class {ClassName}: def __init__(self): self.{attr} = {value}
Slots de substituição
{ClassName}: class name; {attr}: attribute name; {value}: initial value
Colocados típicos
- singleton
- service
- manager
- instance
- get_instance
- instance()
Substituições comuns
- Using a metaclass
- overriding __new__
- or using a module-level instance.
Erros comuns
Failing to prevent re-initialization on each call, neglecting thread safety, confusing class attributes with instance attributes.
Similar / contraste
Similar: Borg pattern, Monostate, dependency injection. Contrasting: Factory pattern, Prototype pattern, Multiton.
Interferências
May be confused with module-level singletons; __init__ may run on each call unless guarded; thread‑safety concerns.
Família do chunk
- Singleton pattern
- Borg pattern
- Monostate
- Dependency injection
Nuance
The decorator ensures a single instance, but __init__ runs on each call unless guarded; the initial value is set only on first instantiation if guarded.
Efeito pragmático
Signals that the class is intended to be a singleton with a zero‑initialized attribute, conveying a design decision for global state.
Dica de memória
@singleton decorator
Upgrade path
Thread-safe singleton using threading.Lock
Log in to save chunks.