C++多线程编程指南
1 创建线程
在C++中,创建线程是一项基本技能。通过使用 boost::thread
库,我们可以轻松地创建新线程来执行特定任务,同时让主线程继续运行。下面是一个简单的例子,展示了如何创建一个线程并让它执行一个函数对象:
#include<iostream>
#include<boost/thread/thread.hpp>
struct MyThreadFunc {
void operator()() {
// Do something long-running...
std::cout << "Thread is running!" << std::endl;
}
};
int main() {
boost::thread myThread(MyThreadFunc());
// 主线程继续运行
std::cout << "Main thread continues..." << std::endl;
myThread.join(); // 等待子线程结束
}
2 线程的基本操作
线程的生命周期包括启动、挂起、恢复和终止等基本操作。以下是几种常用的操作:
- 启动线程