21xrx.com
2024-12-23 00:21:59 Monday
登录
文章检索 我的文章 写文章
C++多线程交替输出字符串
2023-06-27 11:10:51 深夜i     --     --
C++ 多线程 交替输出 字符串 并发编程

C++多线程是一个非常强大的特性,可以让程序在一个物理CPU上并发执行多个线程。这就使得编程人员能够更加高效地运用计算资源,并实现真正的并发编程。

本文将介绍如何在C++中实现多线程交替输出字符串的功能。我们将通过两个线程,一个输出“Hello, ”,一个输出“World!”,来交替输出完整的“Hello, World!”字符串。

首先,我们需要包含头文件 。其中, 用于创建线程, 用于输出字符串。


#include <thread>

#include <iostream>

接下来,定义两个线程函数,一个输出“Hello, ”,一个输出“World!”。


void print_hello() {

  while (true) {

    std::cout << "Hello, ";

    std::this_thread::sleep_for(std::chrono::milliseconds(100));

  }

}

void print_world() {

  while (true) {

    std::cout << "World!" << std::endl;

    std::this_thread::sleep_for(std::chrono::milliseconds(100));

  }

}

在这两个线程函数中,我们分别使用了一个无限循环,不断地输出对应的字符串,并使用了std::this_thread::sleep_for函数来让线程休眠100毫秒,以便观察交替输出的效果。

接下来,我们在主函数中创建两个线程,并等待它们结束。


int main() {

  std::thread t1(print_hello);

  std::thread t2(print_world);

  t1.join();

  t2.join();

  return 0;

}

在这里,我们使用std::thread函数创建了两个线程,并分别调用了print_hello和print_world函数作为线程函数。之后,我们调用了t1.join()和t2.join()函数,等待两个线程执行完毕,最后返回0。

现在,我们已经成功地实现了C++多线程交替输出字符串的功能。感谢大家阅读本篇文章,并祝您编程愉快!

  
  

评论区

{{item['qq_nickname']}}
()
回复
回复