/// <summary>
        /// 释放所有注册的group,关闭流;
        /// </summary>
        /// <returns></returns>
        private void UnRegisterFromDatabase()
        {
            if (mGroups.Keys.Count == 0)
            {
                return;
            }
            List <string>            keys = new List <string>(mGroups.Keys);
            GameConfigTypeStreamData data = null;

            for (int i = 0, imax = keys.Count; i < imax; i++)
            {
                data = null;
                if (!mGroups.TryGetValue(keys[i], out data))
                {
                    continue;
                }
                Stream fs = null;
                switch (data.GetGameConfigType())
                {
                case GameConfigType.GameConfig_Xml:
                    fs = XmlDatabase.Instance.RemoveFromDatabase(keys[i]);
                    break;

                case GameConfigType.GameConfig_XmlSheet:
                    fs = SheetDatabase.Instance.RemoveFromDatabase(keys[i]);
                    break;
                }
                if (fs != null)
                {
                    fs.Close();
                }
                mGroups.Remove(keys[i]);
            }
        }
        private Dictionary <string, GameConfigTypeStreamData> mGroups = new Dictionary <string, GameConfigTypeStreamData>(); // 缓存信息,清除时使用;

        /// <summary>
        /// 通过groupName释放流;
        /// </summary>
        /// <param name="groupName">group名称</param>
        private void UnRegisterFromDatabaseByGroupName(string groupName)
        {
            GameConfigTypeStreamData data = null;

            if (!mGroups.TryGetValue(groupName, out data))
            {
                return;
            }
            Stream fs = null;

            switch (data.GetGameConfigType())
            {
            case GameConfigType.GameConfig_Xml:
                fs = XmlDatabase.Instance.RemoveFromDatabase(groupName);
                break;

            case GameConfigType.GameConfig_XmlSheet:
                fs = SheetDatabase.Instance.RemoveFromDatabase(groupName);
                break;
            }
            if (fs != null)
            {
                fs.Close();
            }
            mGroups.Remove(groupName);
        }