考虑使用异步而不等待 https://stackoverflow.com/questions/12016567/using-async-without-await.
认为您可能误解了 async 的作用。警告是
完全正确:如果您将方法标记为异步但不使用等待
任何地方,那么你的方法都不会是异步的。如果你调用它,所有
方法内的代码将同步执行。
我想编写一个应该异步运行但不需要使用等待的方法。例如当使用线程时
public async Task PushCallAsync(CallNotificationInfo callNotificationInfo)
{
Logger.LogInfo("Pushing new call {0} with {1} id".Fill(callNotificationInfo.CallerId,
}
我要打电话PushCallAsync
并运行异步并且不想使用等待。
我可以在 C# 中使用 async 而不使用 wait 吗?
你还是有误解async
. The async
关键字确实not意思是“在另一个线程上运行”。
要将某些代码推送到另一个线程上,您需要显式地执行此操作,例如,Task.Run
:
await Task.Run(() => Logger.LogInfo("Pushing new call {0} with {1} id".Fill(callNotificationInfo.CallerId));
我有一个async/await介绍帖子 http://blog.stephencleary.com/2012/02/async-and-await.html您可能会发现有帮助。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)