我的 azure 函数中有某种代码:
foreach (var ins in instances)
{
TaskList.Add(ins.DeallocateAsync());
}
Task.WaitAll(TaskList.ToArray());
我想知道在一个 azure 函数内可以生成多少个并行任务?主机是否能够容忍这种模型,否则会杀死子进程?
最佳答案
@Gaploid 我建议在这种情况下使用持久函数,这样可以在长时间运行的操作中维护您的状态。
此外,正如 MS 建议的那样,azure 函数应该是耗时较少的操作,因为如果您在消耗计划中运行 azure 函数,那么您可能会发现它对您的调用有点无响应,因为 Azure 函数在特定空闲时间后冷启动。因此,当它重新启动时,您漫长的过程启动起来会更加复杂。
更重要的是,如果您使用编排(又称持久函数),您会发现自己可以节省一些钱,因为 MS 不会向您收取后台任务费用。
具体来说,如果您使用 MSFT 首选的持久线程/任务,则可以运行尽可能多的线程/任务。
关于azure - 我可以在 azure 函数内执行多少个任务?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54944879/