在C++中,你可以使用C++11或更高版本的线程库来创建和管理线程。以下是一个简单的C++线程实验示例,该示例展示了如何创建和启动一个线程,以及如何在主线程和子线程中执行不同的任务。
#include <iostream> | |
#include <thread> | |
#include <chrono> // 用于延迟示例 | |
// 线程要执行的函数 | |
void threadFunction() { | |
std::this_thread::sleep_for(std::chrono::seconds(1)); // 延迟1秒 | |
std::cout << "Hello from thread!\n"; | |
} | |
int main() { | |
std::cout << "Starting main thread...\n"; | |
// 创建一个线程对象,并启动它 | |
std::thread t(threadFunction); | |
// 主线程继续执行 | |
std::cout << "Main thread continuing...\n"; | |
// 等待线程完成 | |
t.join(); | |
std::cout << "Thread finished, main thread exiting.\n"; | |
return 0; | |
} |
在上面的示例中,我们定义了一个threadFunction
函数,该函数将在线程中执行。这个函数简单地等待1秒钟,然后打印一条消息。在main
函数中,我们创建了一个std::thread
对象t
,并传递了threadFunction
作为参数来启动线程。然后,主线程继续执行并打印一条消息。最后,我们使用t.join()
来等待线程完成。当线程完成时,主线程将打印一条消息并退出。
注意:在多线程编程中,需要特别注意线程安全和同步问题。上面的示例是一个简单的示例,不涉及这些问题。但在实际的多线程程序中,你可能需要使用互斥锁、条件变量等同步机制来确保线程安全。