写入/读取静态thread_local类成员时未定义的引用?

时间:2019-03-08 18:38:18

标签: c++ multithreading thread-local-storage

#include <iostream>
#include <thread>
class A{
  public:
    static thread_local long l ;
    int value ;
    A(int a = 2){
       value = a;     
    }
    int foo(){
       A::l = 3;
       return 3;
    }
};
A a;
int main(){
    // A::l = 3;
     a.foo();
    return 0;
}

以上有关编译的代码给出了错误,有人可以帮助解决它们吗?当我删除对静态thread_local的读取和写入时,这似乎可以编译。是否需要一些特殊的库或链接器才能正常工作。我需要保持静态thread_local以获得与Java中的threadLocal类相同的功能

0 个答案:

没有答案