首页 > 其他 > 详细

std::thread_local

时间:2020-09-20 20:34:38      阅读:44      评论:0      收藏:0      [点我收藏+]

std::thread_local是线程局部存储。每个线程都有一个对应备份,被std::thread_local修饰的变量生存周期和所属线程一致,线程被销毁该变量释放。

可以用以下代码观察:

#include<iostream>
#include<thread>

using namespace std;

thread_local int tcount = 0;
int flag = 1;

void fThread() {
    tcount++;
    cout << tcount << endl;
    while (flag) {
        ;
    }
}

int main()
{
    thread t1(fThread);
    thread t2(fThread);
    t1.join();
    t2.join();
    return 0;
}

程序输出的结果是:

1

1

std::thread_local

原文:https://www.cnblogs.com/HadesBlog/p/13701280.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!