当前位置: 首页 > 编程语言 > C#

AZURE-RunRun()asynchronouslyinworkerrole分享

时间:2023-04-10 18:57:30 C#

AZURE:RunRun()asynchronouslyinworkerrole我有一个异步任务。asyncTaskUploadFiles(){}我想在Azureworkerrole的Run()方法中的UploadFiles()上调用'await'。但是“等待”仅适用于声明为异步的方法。所以我可以像这样使Run()方法异步:publicoverridevoidRun(){UploadFiles();}topublicasyncoverridevoidRun(){awaitUploadFiles();}工作者角色只有一个同步入口点。这意味着您需要使运行Run方法的线程保持活动状态。您可以在UploadFiles给您的任务上调用Wait。通常可以避免等待,但您必须在这里等待。成本并没有那么高:一个线程被浪费了。正如@usr提到的,工作者角色的入口点仅同步运行,因此您需要等待您启动的任何任务。但通常情况下,我发现我通常有多个任务要从工作者角色异步启动。我遵循的标准模式是这样的。以上是C#学习教程:AZURE:runasynchronouslyinworkerrole。publicoverridevoidRun(){vartasks=newList();tasks.Add(RunTask1Async());tasks.Add(RunTask2Async());tasks.Add(RunTask3Async());Task.WaitAll(tasks.ToArray());}本文收集自网络,不代表立场。如涉及侵权,请点击右侧联系管理员删除。如需转载请注明出处: