コード例 #1
0
 public static MySingleton Create()
 {
     if (_instance == default(MySingleton))
     {
         _instance = new MySingleton();
     }
     return(_instance);
 }
コード例 #2
0
ファイル: Program.cs プロジェクト: ahmet-hub/DesingPattern1
        static void Main(string[] args)
        {
            MySingleton singleton1 = MySingleton.CreateAsSingleton();

            Console.WriteLine(singleton1.GetGuid().ToString());
            MySingleton singleton2 = MySingleton.CreateAsSingleton();

            Console.WriteLine(singleton2.GetGuid().ToString());
        }
コード例 #3
0
        private static void Run()
        {
            //this is not a thread safe ...
            MySingleton ms1 = MySingleton.GetObj();

            ms1.Print("This is printed from inside mySingleton class print method...\n");

            ms1.Print("I am called from: " + ms1.GetType().Name);
            Console.ReadLine();
        }
コード例 #4
0
ファイル: Program.cs プロジェクト: ShepVlad/SP
        static void Main(string[] args)
        {
            MySingleton s1 = MySingleton.GetInstatnce();
            MySingleton s2 = MySingleton.GetInstatnce();
            MySingleton s3 = MySingleton.GetInstatnce();
            Guid        g  = Guid.NewGuid();

            Console.WriteLine("Guid {0}", g);
            Console.WriteLine("s1 {0}, s2 {1}, s3 {2}", s1.GetHashCode(),
                              s2.GetHashCode(), s3.GetHashCode());
        }
コード例 #5
0
ファイル: Program.cs プロジェクト: irinascurtu/patterns
        static void Main(string[] args)
        {
            MySingleton myCoolSingleton = MySingleton.Instance;

            myCoolSingleton.PrintDetails("heeeelooo you!");
            Parallel.Invoke(
                () => PrintTeacherDetails(),
                () => PrintStudentdetails()
                );
            Console.ReadLine();
        }
コード例 #6
0
        static void Main(string[] args)
        {
            MySingleton s1 = MySingleton.Instance;
            MySingleton s2 = MySingleton.Instance;

            if (s1 == s2)
            {
                Console.WriteLine("s1 and s2 are equal");
            }
            Console.ReadLine();
        }
コード例 #7
0
        public void Run()
        {
            MySingleton object1 = MySingleton.GetInstance();

            Console.WriteLine("Object created at {0}",
                              object1.creationTime.ToLongTimeString());

            Thread.Sleep(1000);

            MySingleton object2 = MySingleton.GetInstance();

            Console.WriteLine("Object created at {0}",
                              object1.creationTime.ToLongTimeString());
        }
コード例 #8
0
        public static MySingleton GetInstance()
        {
            if (_instance == null)
            {
                lock (_padlock)
                {
                    if (_instance == null)
                    {
                        _instance = new MySingleton();
                    }
                }
            }

            return(_instance);
        }
コード例 #9
0
        public static void Main(string[] args)
        {
            // The client code.
            MySingleton s1 = MySingleton.GetInstance();
            MySingleton s2 = MySingleton.GetInstance();

            if (s1 == s2)
            {
                Console.WriteLine("Singleton works, both variables contain the same instance.");
            }
            else
            {
                Console.WriteLine("Singleton failed, variables contain different instances.");
            }

            Console.ReadLine();
        }
コード例 #10
0
ファイル: Program.cs プロジェクト: wmadwand/SingletonPattern
 static void Main(string[] args)
 {
     Console.WriteLine("Hello World!");
     MySingleton.Instance();
 }
コード例 #11
0
ファイル: Program.cs プロジェクト: irinascurtu/patterns
        private static void PrintStudentdetails()
        {
            MySingleton fromStudent = MySingleton.Instance;

            fromStudent.PrintDetails("From Student");
        }
コード例 #12
0
ファイル: Program.cs プロジェクト: irinascurtu/patterns
        private static void PrintTeacherDetails()
        {
            MySingleton fromTeacher = MySingleton.Instance;

            fromTeacher.PrintDetails("From Teacher");
        }
コード例 #13
0
        static void Main(string[] args)
        {
            MySingleton mySingleton = MySingleton.Instance;

            mySingleton.DoSomething();
        }