Пример #1
0
 public IPadInt store(int uid)
 {
     lock (_stateLockObj) {
         if (isFail)
         {
             Console.WriteLine("[!STORE] Error: DataServer " + name + " is set to [Fail] mode!");
             Console.WriteLine("---");
             while (true)
             {
                 ;
             }
             //throw new RemotingException("Server is in Fail Mode");
         }
         else if (isFreeze)
         {
             lock (SingletonCounter.Instance) {
                 SingletonCounter.Instance.incrementLockCounter();
                 Monitor.Wait(SingletonCounter.Instance);
             }
         }
     }
     if (!padInts.Contains(uid))
     {
         PadInt obj = new PadInt(uid, this);
         padInts.Add(uid, obj);
         if (_isPrimary)
         {
             _slaveServer.store(uid);
         }
         Console.WriteLine("[STORE] DataServer " + name + " stored PadInt " + uid);
         Console.WriteLine("---");
         return(obj);
     }
     return(null);
 }