本文整理汇总了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);
}
}