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

c++ std::thread

作者:风皇霸陵   发布日期:2026-05-02   浏览:31

#include <iostream>
#include <thread>

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

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

    // 主线程继续执行其他任务
    std::cout << "Main thread is doing other work..." << std::endl;

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

    std::cout << "Sub-thread has finished." << std::endl;

    return 0;
}

解释说明:

  1. 引入头文件#include <thread> 引入了 C++ 标准库中的线程支持。
  2. 定义函数print_numbers 是一个简单的函数,它会在新线程中执行,打印数字 1 到 5。
  3. 创建线程:在 main 函数中,使用 std::thread t(print_numbers) 创建了一个新线程,并将 print_numbers 函数作为线程的执行体。
  4. 主线程继续工作:主线程继续执行其他任务,输出提示信息。
  5. 等待子线程完成:使用 t.join() 等待子线程完成。join() 会阻塞当前线程,直到子线程执行完毕。
  6. 检查线程是否可加入if (t.joinable()) 检查线程是否已经启动且未被加入或分离。

这个示例展示了如何在 C++ 中使用 std::thread 来创建和管理线程。

上一篇:c++中&的用法

下一篇:c++ extern关键字

大家都在看

c++闭包

c++向上取整的代码

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

c++ 注释

c++如何判断素数

c++怎么输入字符串

c++ functional

c++框架代码

c++格式化字符串

c++ orm框架

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

Laravel 中文站