Azure Webjob 支持异步执行(如果支持)如何?

标签 azure servicebus azureservicebus azure-webjobs azure-webjobssdk

我想执行我的Azure Webjob方法异步,但我想知道Azure Webjob是否支持异步执行

任何人都可以帮助我吗?异步执行 webjob 方法 ProcessSub1MessagesProcessSub2Messages

namespace WebJob1
{
public class Functions 
{
      public static void ProcessSub1Messages([ServiceBusTrigger("TestTopic", "Sub1")] BrokeredMessage message,
        TextWriter logger)
        {   
            Console.WriteLine("Webjob Start for Sub1 {0} {1}", message.MessageId, DateTime.Now);
            Thread.Sleep(100000);
            Console.WriteLine("Webjob End for Sub1 {0} {1}", message.MessageId, DateTime.Now);
        }

        public static void ProcessSub2Messages([ServiceBusTrigger("TestTopic", "Sub2")] BrokeredMessage message,
        TextWriter logger)
        {
            Console.WriteLine("Webjob Start for Sub2 {0} {1}", message.MessageId, DateTime.Now);
            Thread.Sleep(100000);
            Console.WriteLine("Webjob End for Sub2 {0} {1}", message.MessageId, DateTime.Now);
        }
}
} 

最佳答案

是的,WebJobs SDK 支持异步。只需将函数的返回类型从 void 更改为 Task:

 public static async Task ProcessSub2Messages(
    [ServiceBusTrigge(("TestTopic", "Sub2")] BrokeredMessage message,
    TextWriter logger)
    {
        // async operations here
    }

关于Azure Webjob 支持异步执行(如果支持)如何?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28742102/

相关文章:

c# - Azure Servicebus 上的 ConnectivityMode.Http 是否支持 HTTPS

c# - MessageLockLostException : The lock supplied is invalid. 锁已过期,或者消息已从队列中删除

azure - 如何将 azure 磁盘恢复到以前的快照?

javascript - Microsoft Bot 框架,从 Javascript 设置用户状态

web-services - ASP.NET Web 服务在 Windows Azure 中返回错误请求

c# - Azure ServiceBus 在 Client.Receive() 上返回 null

azure - Terraform Azure VM 名称不一致

azure - Multi-Tenancy Azure 服务总线

azure - ExponentialBackoffRetry 如何与 Azure 函数的 ServiceBus 触发器配合使用?

azure - 将消息从一个服务总线复制到另一个服务总线的最佳方法是什么?