0
|
MOHAMED IDHRIS SHEIK DAWOOD · 技术社区 · 7 年前 |
![]() |
1
1
这里有很多问题。首先,异步是
不
后台处理。没有线程切换的保证,在web应用上下文中,即使有线程切换,它仍然在线程池线程上,无论哪种方式。使用
如果您想在“后台”运行某些内容,应该将其卸载到单独的 过程 。像Hangfire这样的工具可以实现这一点。出于某种原因,每个试图使用async进行后台工作的人都声称,由于某些未指明的原因,他们不能使用Hangfire或类似的东西。你使用你需要的工具来完成工作。时期
然而,如果你真的不能或不会使用像Hangfire这样的东西,那么你需要
最后,仅供参考,您不能在构造函数中执行异步工作。如果您确实需要使用一些异步功能来构造类,那么您需要使用类似于静态初始值设定项模式的东西。本质上,向类添加一个异步静态方法,该方法返回类的构造实例。然后,你可以等待。 |
![]() |
user107586 · 如何处理等待句柄不会导致无限循环? 5 月前 |
![]() |
ron burgundy · 获取-释放语义是否跨线程传递?[副本] 5 月前 |
![]() |
BenjiFB · C#内存缓存:在一次操作中追加到列表? 5 月前 |
![]() |
András Takács · Python多线程问题 9 月前 |
|
András Takács · Python多线程错误 9 月前 |