在C++中,可以使用C++11标准库中的<thread>
头文件来创建多线程。下面是一个简单的示例,展示了如何创建两个线程并执行一些任务:
#include<iostream>
#include<thread>
// 线程要执行的函数
void task1() {
std::cout << "Task 1 executed by thread "<< std::this_thread::get_id()<< std::endl;
}
void task2() {
std::cout << "Task 2 executed by thread "<< std::this_thread::get_id()<< std::endl;
}
int main() {
// 创建线程对象,并将任务传递给线程
std::thread t1(task1);
std::thread t2(task2);
// 等待线程完成任务
t1.join();
t2.join();
return 0;
}
在这个示例中,我们定义了两个函数task1
和task2
,然后在main
函数中创建了两个线程t1
和t2
,分别执行这两个任务。通过调用join()
方法,我们等待线程完成任务。
注意:编译这个程序时,需要使用支持C++11的编译器,并添加-std=c++11
编译选项。例如,使用g++编译器时,可以运行以下命令:
g++ -std=c++11 main.cpp -o main
./main