c# - 从异步方法调用非异步方法,同时保持高可用性
问题描述
我正在开发带有控制器的ASP.NET Core
Web 应用程序。async
我在一个ASP.NET Core
项目中引用和调用方法,该项目不使用async
执行 IO 绑定工作的异步编程(否)。
理想的解决方案是重构引用的项目以使用异步编程。但是,我面临着严重的时间限制。
Microsoft 文档建议不要创建Task.Run
用于执行 IO 绑定工作的任务。它还建议不要立即等待来自Task.Run
.
我的问题是 - 在这种情况下是否还有其他选择,我可以在不重构和不创建线程的情况下调用非异步方法,同时保持高可用性?
解决方案
在这种情况下是否还有其他选择,我可以在不重构和不创建线程的情况下调用非异步方法,同时保持高可用性?
您的选择是:
- 直接给他们打电话。由于方法是同步的,您将阻塞 I/O 工作上的线程。
- 使方法异步。
推荐阅读
- python - 更优雅的 if 语句处理
- javascript - ForgeJS:应用“onClick”:[“action-loadscene-1”]链接
- java - 从 java spring 微服务将用户活动发送到外部服务
- c# - WPF Window 自定义事件创建和绑定到 ICommand
- python - Django(Gunicorn)在生产中没有看到 ENV VARS,但 Django-shell 有
- scalability - 您如何最好地为多个查询参数构建 DynamoDb
- ddev - 使用 PostgreSQL 的两个 DDEV 项目之间的奇怪干扰
- javascript - 使用 Openweather Api 处理 React fetch
- javascript - Ag-grid React 通过单元格中的按钮传递数据
- pyspark - 我们如何使用 AWS GLue 拆箱方法?