[英]Call async Method from a normal method c#
我正在尝试从普通方法调用异步方法。 我在这里有以下两个问题:
Task.Run
到 B 类的方法时,JQuery 没有收到调用。await
因为它会引发此错误:
await 只能在异步方法中使用
我不确定我遇到的第一个问题是什么问题。 其次,有没有办法在调用 classB 时使用await
,因为当我从不同的异步方法进行调用时它似乎可以工作。
public class A :IA
{
public A ()
{
consumer.Received += Received;
}
public void Received(object sender, BasicDeliverEventArgs ea)
{
//get message here and send to classB
Task.Run(() => classB.PingMesssage(Message));
}
}
public class B
{
public async Task PingMesssage(string message)
{
await InvokeClientMethodToAllAsync("callJQueryMethod", "message"); //calling js here
}
}
您可以使Received
异步并等待对PingMessage
的调用:
public async void Received(object sender, BasicDeliverEventArgs ea) {
await classB.PingMessage(message);
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.