Laravel  
laravel
文档
数据库
架构
入门
php技术
    
Laravelphp
laravel / php / java / vue / mysql / linux / python / javascript / html / css / c++ / c#

c++ 线程

作者:妳明白莪還在等待嗎?   发布日期:2025-07-29   浏览:84

#include <iostream>
#include <thread>

// 定义一个简单的函数,将在新线程中执行
void printNumbers() {
    for (int i = 0; i < 5; ++i) {
        std::cout << "Number: " << i << std::endl;
    }
}

int main() {
    // 创建一个线程来执行 printNumbers 函数
    std::thread t(printNumbers);

    // 主线程继续执行其他任务
    for (int i = 0; i < 5; ++i) {
        std::cout << "Main thread: " << i << std::endl;
    }

    // 等待子线程完成
    if (t.joinable()) {
        t.join();  // 调用 join 等待线程结束
    }

    return 0;
}

解释说明:

  1. 引入头文件#include <thread> 引入了 C++ 标准库中的线程支持。
  2. 定义线程函数printNumbers 是一个普通的函数,它将在新线程中执行,打印一些数字。
  3. 创建线程std::thread t(printNumbers); 创建了一个新的线程 t,该线程会执行 printNumbers 函数。
  4. 主线程继续执行:在创建新线程后,主线程继续执行自己的任务,打印另一组信息。
  5. 等待子线程结束if (t.joinable()) { t.join(); } 检查线程是否可以 join(即是否已经启动且未 join),然后调用 join 等待子线程完成。这确保了主线程不会在子线程完成之前退出程序。

这段代码展示了如何在 C++ 中使用多线程来并行执行任务。

上一篇:c++ boost

下一篇:sort函数c++用法

大家都在看

c++闭包

c++单引号和双引号的区别

c++ 注释

c++如何判断素数

c++freopen怎么用

c++ 获取系统时间

c++进制转换函数

c++ tcp

c++ gcd函数

c++ cli

Laravel PHP 深圳智简公司。版权所有©2023-2043 LaravelPHP 粤ICP备2021048745号-3

Laravel 中文站