Singleton

public sealed class Singleton
   {
       private static volatile Singleton uniqueInstance;
 
       private static readonly object locker = new object();
 
       private Singleton()
       {
           var cache = HttpContext.Current.Cache;
       }
       public static Singleton GetInstance()
       {
           if (uniqueInstance == null)
           {
               lock (locker)
               {
 
                   if (uniqueInstance == null)
                   {
                       uniqueInstance = new Singleton();
                   }
               }
           }
           return uniqueInstance;
       }
       public int Number()
       {
           return 1;
       }
       public int Number(int i = 0)
       {
           return i;
       }
   }