//初始化
        protected override void Setup()
        {
            Instance = this;
            // 日志的初始化
            log4net.GlobalContext.Properties["Photon:ApplicationLogPath"] = Path.Combine(
                Path.Combine(this.ApplicationRootPath, "bin_Win64"), "log");
            FileInfo configFileInfo = new FileInfo(Path.Combine(this.BinaryPath, "log4net.config"));

            if (configFileInfo.Exists)
            {
                LogManager.SetLoggerFactory(Log4NetLoggerFactory.Instance); //让photon知道
                XmlConfigurator.ConfigureAndWatch(configFileInfo);          //让log4net这个插件读取配置文件
            }

            log.Info("Setup Completed!");


            InitHandler();
            syncPositionThread.Run();
        }
        private void InitHandler()
        {
            MyGameServer.LogInfo(" InitHandler Start");

            Type[] types           = Assembly.GetCallingAssembly().GetTypes();
            Type   baseRequestType = typeof(BaseRequestHandler);

            MyGameServer.LogInfo(" baseRequestType FullName = " + baseRequestType.FullName);

            foreach (var typeItem in types)
            {
                Type baseType = typeItem.BaseType;
                if (baseType != null)
                {
                    if (baseType.Name == baseRequestType.Name)
                    {
                        try
                        {
                            Type   ObjType = Type.GetType(typeItem.FullName, true);
                            object obj     = Activator.CreateInstance(ObjType);
                            if (obj != null)
                            {
                                BaseRequestHandler info = obj as BaseRequestHandler;
                                if (info != null)
                                {
                                    MyGameServer.LogInfo("ObjType FullName = " + ObjType.FullName + "Add To DictRequestHandler");
                                    DictRequestHandler.Add(info.OpCode, info);
                                }
                            }
                        }
                        catch (Exception e)
                        {
                            MyGameServer.LogInfo("typeItem FullName = " + typeItem.FullName + "Not Find");
                        }
                    }
                }
            }

            MyGameServer.LogInfo(" InitHandler Complete");
        }