У меня есть два экземпляра рабочей роли.Как выполнить подзадачу только на одном экземпляре роли рабочего лица
Я хочу запустить подзадачу (в потоке пула потоков) только на одном из экземпляров рабочей роли.
Моя первоначальная идея состояла в том, чтобы сделать что-то вроде этого:
ThreadPool.QueueUserWorkItem((o) =>
{
if (RoleEnvironment.CurrentRoleInstance.Id == RoleEnvironment.Roles[RoleEnvironment.CurrentRoleInstance.Role.Name].Instances.First().Id)
{
emailWorker.Start();
}
});
Однако приведенный выше код опирающийся на коллекции Role.Instances всегда возвращающегося экземпляры в том же порядке. Это так? или можно вернуть предметы в любом порядке?
Есть ли другой утвержденный способ запуска задачи только для одного экземпляра роли?
Спасибо,