private CallCenterEmployee GetNewCallCenterEmployee() { // Creates a new CallCenteremployee CallCenterEmployee oEmp = new CallCenterEmployee(); objPool.Enqueue(oEmp); return(oEmp); }
public ObjectPoolPatternStrategy() { CallCenter cs = new CallCenter(); CallCenterEmployee myEmp1 = cs.GetCallCenterEmployee(); Console.WriteLine("First employee"); CallCenterEmployee myEmp2 = cs.GetCallCenterEmployee(); Console.WriteLine("Second employee"); }
protected CallCenterEmployee RetrieveFromPool() { CallCenterEmployee oEmp; // if there is any objects in my collection if (objPool.Count > 0) { oEmp = (CallCenterEmployee)objPool.Dequeue(); CallCenterEmployee.Counter--; } else { // return a new object oEmp = new CallCenterEmployee(); } return(oEmp); }