Exemple #1
0
        private Disposer Fetch(Type type)
        {
            Queue <Disposer> queue;

            if (!this.dictionary.TryGetValue(type, out queue))
            {
                queue = new Queue <Disposer>();
                this.dictionary.Add(type, queue);
            }
            Disposer obj;

            if (queue.Count > 0)
            {
                obj    = queue.Dequeue();
                obj.Id = IdGenerater.GenerateId();
                return(obj);
            }
            obj = (Disposer)Activator.CreateInstance(type);
            return(obj);
        }
Exemple #2
0
 protected Disposer()
 {
     this.Id = IdGenerater.GenerateId();
 }