add ascyn和多线程性能对比

pull/327/head
sunface 3 years ago
parent 41067e44b4
commit cc0d6a2dea

@ -56,6 +56,15 @@
- 有大量 `CPU` 密集任务需要并行运行时,例如并行计算,选多线程模型,且让多线程数等于或者稍大于 `CPU` 核心数 - 有大量 `CPU` 密集任务需要并行运行时,例如并行计算,选多线程模型,且让多线程数等于或者稍大于 `CPU` 核心数
- 无所谓时,统一选多线程 - 无所谓时,统一选多线程
#### async和多线程的性能对比
| 操作 | async | 线程 |
| ---- | ----- | ---- |
| 创建 | 0.3微妙 | 17微妙 |
| 线程切换 0.2微妙 | 1.7微妙 |
可以看出,`async` 在线程切换的开销显著低于多线程,对于 IO 密集的场景,这种性能开销累计下来会非常可怕!
#### 一个例子 #### 一个例子
在大概理解`async`后,我们再来看一个简单的例子。如果想并发的下载文件,你可以使用多线程如下实现: 在大概理解`async`后,我们再来看一个简单的例子。如果想并发的下载文件,你可以使用多线程如下实现:
```rust ```rust

Loading…
Cancel
Save