Tom*_*ton 5 concurrency rust async-await rust-tokio
我知道 tokio 允许编写并发代码。但我不确定它是否并行运行。我的电脑有八个核心。所以理想情况下我运行的线程不超过八个。如果我需要更多并发性,我会在这些线程之上运行协程(使用 tokio)。
当然,除非 tokio 已经是多线程的了。在这种情况下,一开始就创建这八个线程将会适得其反。所以我想问的是,tokio 默认情况下是多线程的,还是我应该自己实现?
kfe*_*v91 15
是的。Tokio 是多线程的。默认情况下,它会创建与核心数量一样多的工作线程。您可以通过宏自定义运行时创建的工作线程数量tokio::main。例子:
#[tokio::main(flavor = "multi_thread", worker_threads = 10)]
async fn main() {
// your code here
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
6535 次 |
| 最近记录: |