21xrx.com
2025-03-24 19:45:36 Monday
文章检索 我的文章 写文章
C++多线程代码实现
2023-06-26 15:53:58 深夜i     12     0
C++ 多线程 代码实现 并发 同步

C++是一门强大的程序设计语言,其内置多线程库可以使开发人员更方便地实现多线程编程。在多线程编程中,线程是程序执行的最小单位。通过使用多个线程可以充分利用多核处理器,提高程序的执行效率。

下面展示一段使用C++多线程库实现的代码:

#include <iostream>
#include <thread>
#include <chrono>
void threadFunction()
{
  for(int i = 0; i < 5; i++)
  {
    std::cout << "Thread executing" << std::endl;
    std::this_thread::sleep_for(std::chrono::milliseconds(1000)); // 线程延时1秒钟
  }
}
int main()
{
  std::thread t(threadFunction); // 创建线程
  for(int i = 0; i < 5; i++)
  {
    std::cout << "Main executing" << std::endl;
    std::this_thread::sleep_for(std::chrono::milliseconds(500)); // 主线程延时0.5秒钟
  }
  t.join(); // 等待线程执行完毕
  return 0;
}

上面的代码展示了如何创建一个线程并启动它。代码分为两部分,主函数和线程函数。主函数先执行,然后创建一个线程并将线程函数作为参数传入,线程函数会在新线程中执行。主函数接着继续执行,在主函数中也加入了延时的操作,以便演示多线程的效果。在主函数中将创建的线程进行等待,保证它执行完毕后程序才退出。

当程序运行时,主线程和新线程会同时执行。主线程每次执行时会延时0.5秒钟,而线程函数每次执行时会延时1秒钟。所以可以看到,主线程和线程函数交替执行,分别输出"Main executing"和"Thread executing"。

通过这段代码,我们可以看到C++多线程库的基本使用方法,例如创建线程、等待线程执行完毕等。同时,我们也可以通过多线程编程来提高程序执行效率,让程序更加高效地利用计算机的硬件资源。

  
  

评论区