线程创建
- 引言
- 为什么要使用线程
- 线程的创建
- 使用函数指针
- 示例
- 运行结果
- 使用类对象
- 示例
- 运行结果
- 使用lambda表达式
- 示例
- 运行结果
- 使用带参数的函数作为线程处理函数
- 示例
- 运行结果
- 使用类成员函数
- 示例
- 运行结果
引言
在学习C++的过程中,线程的使用作为一个非常重要的部分,也是在复杂项目中课有效提升程序的性能的手段,所以必须会。
为什么要使用线程
当编写的程序在运行时,出现界面卡顿,或者当程序处理一些比较耗时的计算时,将所有的操作的都放在主线程,就显得有些不妥,这时若是能将一部分的计算放在子线程中,便可以提高软件的性能,同时也可以提升用户的体验。
线程的创建
C++创建线程的方式,随着C++特性的进一步完善,也在越来越简单化。本文讲述的线程的创建基于C++11或者更高的特性。
注意
以下使用的IDE为vs2019。
使用函数指针
这里创建线程的时候,使用线程处理函数的函数名作为参数来创建线程。
示例
下面时实现代码:
#include <iostream>
#include <thread>using namespace std;void fun() {cout << "当前线程的id:" <<this_thread::get_id()<< endl;
}int main()
{thread t(fun);t.join();cout << "主线程的id:" << this_thread::get_id()