/// <summary>
        ///		Removes the given GameObject to be used again from the pool
        /// </summary>
        /// <param name="oldGameObject"></param>
        /// <returns></returns>
        public bool Recycle(GameObject oldGameObject)
        {
            GameObjectHolder oldGoHolder = this.BaseRecycle(oldGameObject.ObjectName, oldGameObject.Id) as GameObjectHolder;

            if (oldGoHolder == null)
            {
                return(false);
            }
            oldGoHolder.Reset();
            return(true);
        }
        /// <summary>
        ///		Removes the given GameObject to be used again from the pool
        /// </summary>
        /// <param name="name"></param>
        /// <param name="id"></param>
        /// <returns></returns>
        public bool Recycle(GameObject.Name name, uint id = 0u)
        {
            GameObjectHolder oldGoHolder = this.BaseRecycle(name, id) as GameObjectHolder;

            if (oldGoHolder == null)
            {
                return(false);
            }
            oldGoHolder.Reset();
            return(true);
        }