¿Cómo abstraer una clase de singleton?

Así es como escribo mis clases singleton.

public class MyClass
{
    /// <summary>
    /// Singleton
    /// </summary>
    private static MyClass instance;

    /// <summary>
    /// Singleton access.
    /// </summary>
    public static MyClass Instance
    {
        get
        {
            if (_instance == null)
            {
                _instance = new MyClass();
            }
            return _instance;
        }
    }

    private MyClass() { .... }
}
¿Cómo crear un patrón Singleton que sea reutilizable?

Los patrones singleton presentan los siguientes desafíos.

El constructor esprivate oprotected.Una clase base no puede crear una instancia de una clase heredada. Para que puedas reutilizar un resumen común.MyAbstractSingletonClass.Debe tener una propiedad local de solo lectura para obtener la instancia.El problema

Estoy usando este patrón en varias clases y siempre tengo que escribir el mismo código. ¿Cómo puedo escribir algo que se reutiliza cada vez que necesito un singleton?

Respuestas a la pregunta(9)

Su respuesta a la pregunta