当前位置: 首页>>代码示例>>C#>>正文


C# IServiceAddress.Equals方法代码示例

本文整理汇总了C#中IServiceAddress.Equals方法的典型用法代码示例。如果您正苦于以下问题:C# IServiceAddress.Equals方法的具体用法?C# IServiceAddress.Equals怎么用?C# IServiceAddress.Equals使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在IServiceAddress的用法示例。


在下文中一共展示了IServiceAddress.Equals方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。

示例1: DeregisterManagerServer

        private void DeregisterManagerServer(IServiceAddress managerServerAddress)
        {
            // Create a list of servers to be deregistered,
            List<ManagerServiceInfo> toRemove;
            lock (managerServersList) {
                toRemove = new List<ManagerServiceInfo>(32);
                foreach (ManagerServiceInfo item in managerServersList) {
                    if (item.Address.Equals(managerServerAddress)) {
                        toRemove.Add(item);
                    }
                }
            }

            // Remove the entries and persist
            lock (managerServersList) {
                // Remove the entries that match,
                foreach (ManagerServiceInfo item in toRemove) {
                    managerServersList.Remove(item);
                    // Add to the manager database
                    managerDb.RemoveMachine(item.Address);
                }

                PersistManagerServers(managerServersList);

                // Clear the unique id if we are deregistering this service,
                if (managerServerAddress.Equals(address)) {
                    managerUniqueId = -1;
                    PersistManagerUniqueId(managerUniqueId);
                }
            }

            // Perform initialization on the manager
            managerDb.Initialize();

            // Wait for initialization to complete,
            managerDb.WaitInitComplete();

            // Remove the manager server entry,
            managerDb.SetValue("ms." + managerServerAddress, null);

            // Tell all the root servers of the new manager set,
            List<IServiceAddress> rootServersSet = new List<IServiceAddress>(64);
            lock (rootServersList) {
                foreach (RootServiceInfo rs in rootServersList) {
                    rootServersSet.Add(rs.Address);
                }
            }

            foreach (IServiceAddress r in rootServersSet) {
                InformRootServerOfManagers(r);
            }
        }
开发者ID:erpframework,项目名称:cloudb,代码行数:52,代码来源:ManagerService.cs


注:本文中的IServiceAddress.Equals方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。