예제 #1
0
        static void Main()
        {
            Singleton create1 = Singleton.CreateInstance();
            Singleton create2 = Singleton.CreateInstance();

            bool areTheSame = ReferenceEquals(create1, create2);

            Console.WriteLine(areTheSame);
            Console.ReadLine();
        }
예제 #2
0
        static void Main(string[] args)
        {
            try
            {
                TaskFactory taskFactory = new TaskFactory();

                List <Task> tasks = new List <Task>();

                //  for (int i = 0; i < 5; i++)
                //  {
                //      tasks.Add(taskFactory.StartNew(() =>
                //      {
                //          Singleton singleton = Singleton.CreateInstance();
                //          singleton.Show();
                //      }));
                //  }



                for (int i = 0; i < 10000; i++)
                {
                    tasks.Add(taskFactory.StartNew(() =>
                    {
                        Singleton singleton = Singleton.CreateInstance();
                        singleton.Show();
                    }));
                }

                Task.WaitAll(tasks.ToArray());

                Console.WriteLine(Singleton.CreateInstance().iTotal);
            }
            catch (Exception e)
            {
                Console.WriteLine(e);
                //throw;
            }
        }
예제 #3
0
 static void Main(string[] args)
 {
     Singleton singleton = Singleton.CreateInstance();
 }
예제 #4
0
 public void Execute()
 {
     var a = Singleton.CreateInstance();
     var b = MultipleThreadsSingleton.CreateInstance();
 }