Реализация Singleton - C#

Узнай цену своей работы

Формулировка задачи:

Добрый день, увидел очень странную для себя реализация паттерна Singleton.
 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;
            }
        }
Если предположить что SomeEventButton, вызывается каждый раз при нажатии кнопки, то теоретически в программе может появится нескончаемый набор отдельных параллельных потоков?

Решение задачи: «Реализация Singleton»

textual
Листинг программы
Task.Factory.StartNew(() => {  });

ИИ для рефератов и докладов


  • Экспорт Word по ГОСТу
  • Минимум 80% уникальности текста
  • Поиск релевантных источников в интернете
  • Готовый документ за 2 минуты

Оцени полезность:

11   голосов , оценка 4 из 5