本文介绍了我可以使用异步无等待在C#?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
没有异步的await
认为,也许你误解做什么异步。该警告是
完全正确的:如果你标记你的方法异步,但不使用等待
在任何地方,那么你的方法不会是异步的。如果你调用它,所有的
该方法里面的code将同步执行。
我想编写应该运行异步但使用一个线程,当不需要使用await.for例如一个方法
I want write a method that should run async but don't need use await.for example when use a thread
public async Task PushCallAsync(CallNotificationInfo callNotificationInfo)
{
Logger.LogInfo("Pushing new call {0} with {1} id".Fill(callNotificationInfo.CallerId,
}
我要叫 PushCallAsync
和异步运行,并且不希望使用等待。
I want call PushCallAsync
and run async and don't want use await.
我可以在C#中使用异步没有的await?
Can i use async without await in c#?
推荐答案
如果您Logger.LogInfo已经是异步这就够了:
if your Logger.LogInfo is already async this is enough:
public void PushCallAsync(CallNotificationInfo callNotificationInfo)
{
Logger.LogInfo("Pushing new call {0} with {1} id".Fill(callNotificationInfo.CallerId,
}
如果它不只是启动异步无需等待它
if it is not just start it async without waiting for it
public void PushCallAsync(CallNotificationInfo callNotificationInfo)
{
Task.Run(() => Logger.LogInfo("Pushing new call {0} with {1} id".Fill(callNotificationInfo.CallerId));
}
这篇关于我可以使用异步无等待在C#?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!