我想执行我的Azure Webjob
方法异步
,但我想知道Azure Webjob
是否支持异步执行
任何人都可以帮助我吗?异步执行 webjob
方法 ProcessSub1Messages
和 ProcessSub2Messages
。
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/