martedì 25 giugno 2013

Implementare pattern Singleton

Il desing pattern Singleton ha lo scopo di garantire che di una classe ne venga creata una ed una sola istanza.
Ecco una delle possibili implementazioni:
class ClasseSingleton
{
    static ClasseSingleton instance = null;
    static readonly object padlock = new object();
 
    public static ClasseSingleton Instance
    {
        get
        {
            lock (padlock)
            {
                if (instance == null)
                {
                    instance = new ClasseSingleton();
                }
                return instance;
            }
        }
    }
 
    private ClasseSingleton() { }
 
    public void Test(string str)
    {
        Console.WriteLine(str);
    }
}
 
class TestSingleton
{
    public void RichiamaMetodoSingleton()
    {
        ClasseSingleton.Instance.Test("Metodo singleton");
    }
}

Nessun commento:

Posta un commento