← 学习中心

线程与 JoinHandle

std::thread 启动与汇合

本节你将能

用 std::thread::spawn 启动线程并用 join 汇合结果。

直觉模型

线程是操作系统调度的工人;spawn 雇人,join 等他收工交差。

核心要点

  • 闭包若捕获环境,可能需要 move
  • join 返回 Result,线程 panic 会体现在 Err
  • 线程适合 CPU 并行;海量 IO 更常看 async
use std::thread;
let h = thread::spawn(|| { 1 + 2 });
let v = h.join().unwrap();

常见误区

spawn 后不等 join 就结束 main——子线程可能被直接终止。

动手

开两个线程各算一段范围求和,主线程汇总。

互动

测验:move 闭包的作用。

本节小结

下一节用通道做消息传递,减少共享可变状态。

线程与 JoinHandle - 生命科学与前沿科技学习平台 | 必学必会