Реализация Singleton - C#
Формулировка задачи:
Добрый день, увидел очень странную для себя реализация паттерна Singleton.
Если предположить что SomeEventButton, вызывается каждый раз при нажатии кнопки, то теоретически в программе может появится нескончаемый набор отдельных параллельных потоков?
public sealed class Singleton
{
public static event EventHandler SomeEventButton;
private Singleton(string[] input)
{
SomeEventButton+=(o,e)=>
{
Task.Factory.StartNew(() => { });
};
}
private static volatile Singleton singletonInstance;
private static readonly Object syncRoot = new Object();
public static Singleton GetInstance(string[] input)
{
if (singletonInstance == null)
{
lock (syncRoot)
{
if (singletonInstance == null)
{
singletonInstance = new Singleton(input);
}
}
}
return singletonInstance;
}
}Решение задачи: «Реализация Singleton»
textual
Листинг программы
Task.Factory.StartNew(() => { });