c# - 并行处理是否有助于在 c# 中更快地执行 async-await 代码?
问题描述
我有多核笔记本电脑,我想让我的应用程序在这台机器上更快,我认为异步等待和并行编程有助于实现这一壮举。
解决方案
通常,Async 和 await 更多的是关于在长时间运行的操作期间不阻塞当前线程。
通常,当目标是提高性能时会使用并行处理。
也就是说,我认为两者一起使用并不少见——您可能有一个桌面应用程序,您希望确保在执行长时间运行的操作时 UI 线程不会被阻塞
- 因此您可以使用 Async 和 await 在非 UI 线程上启动长时间运行的操作(这样,当长时间运行的操作在另一个线程上运行时,您的桌面应用程序的 GUI 仍然可以响应
- 并且您可能还决定在该长时间运行的操作的实现中引入并行性以使其更快地完成
推荐阅读
- awk - 按小时计算列中的值并添加标题
- .net-core - 已发布的自包含 dotnet 核心应用程序的运行时要求
- c# - WPF 应用程序中所有窗口的相同菜单栏或工具栏
- neo4j - 在 Neo4j 中寻找 K 最短路径
- html - 获取最接近标签外文本的值
- assembly - 为什么“sub esp, 96”、“lea eax, [esp+16]”和“mov [esp+4], eax”?(asm intel 语法)
- javascript - 为每个选定的行获取表格的单元格值?
- r - ctree_control 中的错误...未使用的参数...在 R 中
- php - 带有 Apache Mod-Rewrite 的友好 URL
- python - pyodbc 模块在 unix 本地安装