简介
线程是一系列指令,可以在多线程环境中与其他此类序列同时执行,同时共享相同的地址空间.
会员类型
Sr.No. | 会员类型& description |
---|---|
1 | id 这是一个主题ID. |
2 | 原生句柄类型 它是原生句柄类型. |
成员函数
Sr.No. | 会员功能& description |
---|---|
1 | (constructor) 它用于构造线程. |
2 | (析构函数) ) 它用于析构函数线程. |
3 | operator = 这是一个move-assign thread. |
4 | get_id 它用于获取线程ID. |
5 | 可加入joinable 用于检查是否可加入. |
6 | join 它用于加入线程. |
7 | detach 它用于分离线程. |
8 | 交换swap 它用于交换线程. |
9 | native_handle 它用于获取原生句柄. |
10 | hardware_concurrency [static] 它用于检测硬件concu rrency. |
非会员超载
Sr.No. | 非会员超载& description |
---|---|
1 | swap (thread) 它用于交换线程. |
示例
以下std :: thread示例.
#include#include void foo() { std::cout << " foo is executing concurrently...\n";}void bar(int x) { std::cout << " bar is executing concurrently...\n";}int main() { std::thread first (foo); std::thread second (bar,0); std::cout << "main, foo and bar now execute concurrently...\n"; first.join(); second.join(); std::cout << "foo and bar completed.\n"; return 0;}
输出应该是这样的去;
main, foo and bar now execute concurrently... bar is executing concurrently... foo is executing concurrently...foo and bar completed.