[英]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.