future
std::packaged_task 配合使用。
mutex
std::mutex 是 C++11 提供的最基础互斥量,用来保护多个线程之间共享的数据,确保同一时刻只有一个线程能进入临界区。
thread
std::thread 是 C++11 引入的线程类,用于创建和管理原生线程。它让 C++ 程序可以并发执行多个任务,从而更好利用多核 CPU。
condition_variable
std::condition_variable 是 C++11 提供的条件变量,用于在线程间实现"等待-通知"机制。它允许多个线程在某个条件满足前阻塞等待,并由另一个线程在条件满足时唤醒它们。
atomic
std::atomic 是 C++11 引入的原子操作模板,保证对单个变量的读写和修改操作在多线程环境下是原子的,不会出现数据竞争。它比 mutex 更轻量,适合保护单个标志位、计数器等简单共享变量。