我有两个工人角色的实例。
我只想在其中一个 Worker Role 实例上运行子任务(在线程池线程上)。
我最初的想法是做这样的事情:
ThreadPool.QueueUserWorkItem((o) =>
{
if (RoleEnvironment.CurrentRoleInstance.Id == RoleEnvironment.Roles[RoleEnvironment.CurrentRoleInstance.Role.Name].Instances.First().Id)
{
emailWorker.Start();
}
});
但是,上面的代码依赖于Role.Instances
集合总是以相同的顺序返回实例。是这样吗?或者可以按任何顺序退回物品吗?
是否有另一种仅在一个角色实例上运行任务的批准方式?