Feedback

C# - Einfaches Singleton-Pattern

Veröffentlicht von am 18.06.2015
(1 Bewertungen)
Implementierung eines einfaches Singleton-Pattern.
GFU-Schulungen  [Anzeige]

Angular mit ASP.NET Core für .NET-Entwickler

.NET ist Ihnen vertraut, als Entwickler verfügen Sie über einschlägige Kenntnisse. In diesem Kurs lernen Sie nun, Angular in .NET-Umgebungen einzusetzen. Sie verstehen das Konzept von Angular und integrieren das clientseitige JS-Framework sicher in.NET-Anwendungen.

C# 2017/2015/2013 Aufbau

In dieser Schulung lernen Sie fortgeschrittene Techniken im Bereich .Net C#. Dabei stehen neben den eigentlichen Techniken auch architektonische Aspekte im Mittelpunkt.


public sealed class Singleton
{
    private Singleton()
    {}

    // Dein Code hier

    public static Singleton Instance
    { 
        get { return lazy.Value; } 
    }

    private static readonly Lazy<Singleton> lazy = new Lazy<Singleton>(() => new Singleton());
}

Abgelegt unter singleton.

2 Kommentare zum Snippet

Stefan Kern schrieb am 20.06.2015:
Verwende ich auch oft aber braucht man den teil "() => new Singleton()" wirklich?
Koopakiller schrieb am 22.06.2015:
@Stefan
durch die Lazy<T>-Klasse wird die Instanz erst erzeugt wenn man sie braucht. Alternativ könnte man auch im Getter prüfen ob die Instanz null ist und ggf. eine neue erzeugen. Mit der Lazy<T>-Klasse ist es aber etwas moderner. Soweit die allgemeine Theorie.

Wenn man den Parameterlosen Konstruktor aufrufen will kann man den Lambda auch einfach weg lassen. Da hast du recht. Ich halte es trotzdem für erwähnenswert falls man einen nicht parameterlosen Konstruktor oder eine ganz andere Initialisierung einbauen möchte.
 

Logge dich ein, um hier zu kommentieren!