Exemple #1
0
 public void Return(ObjectPoolInstance _instance)
 {
     lock (syncRoot)
     {
         temp         = _instance;
         temp.IsInUse = false;
         temp.SetNext(curAvailableInst);
         curAvailableInst = temp;
     }
 }
Exemple #2
0
 public ObjectPoolInstance Fetch()
 {
     lock (syncRoot)
     {
         if (curAvailableInst == null)
         {
             Expand();
         }
         temp = curAvailableInst;
         curAvailableInst.IsInUse = true;
         curAvailableInst         = curAvailableInst.GetNext();
         temp.SetNext(null);
         return(temp);
     }
 }