2_Mode colonne unique_Mode singleton chinois affamé

1. Modèle singleton de style affamé

(1) Concept de modèle singleton de style affamé

Le modèle singleton de style Hungry est initialisé immédiatement lorsque la classe est chargée et qu'un objet singleton est créé . Il est absolument thread-safe . Il est instancié avant l'apparition du thread. Il n'y a aucun problème de sécurité d'accès.

(2) Mise en œuvre du code

public class HungrySingleton {
    
    
    private static final HungrySingleton hungrySingleton = new HungrySingleton();
    
    private HungrySingleton(){
    
    }
    
    public static HungrySingleton getInstance(){
    
    
        return  hungrySingleton;
    }
}

(3) Avantages et inconvénients

  • Avantages : haute efficacité d'exécution, hautes performances, pas de verrous
  • Inconvénients : dans certains cas, cela peut entraîner un gaspillage de mémoire, une destruction par réflexion et une destruction par sérialisation des singletons.

(4) Scénarios d'utilisation

  • Le modèle singleton de style Hungry convient aux situations où il y a peu d’objets singleton. Écrire de cette manière peut garantir une sécurité absolue des threads et une efficacité d’exécution relativement élevée.
  • Mais son inconvénient est également évident, c'est-à-dire que toutes les classes d'objets sont instanciées lorsqu'elles sont chargées.S'il y a un grand nombre d'objets singleton dans le système, l'initialisation du système entraînera beaucoup de gaspillage de mémoire.

Je suppose que tu aimes

Origine blog.csdn.net/jinhuding/article/details/135492029
conseillé
Classement