可能重複:
C++11 thread_local in gcc - alternatives
Is there any way to fully emulate thread_local using GCC's __thread?如何在C++中初始化線程局部變量?
我想用C++ 11 thread_local
創建和使用thread_local變量,但它尚未由海灣合作委員會的支持,我我正在使用gcc特定的__thread
。我聲明的變量的方法是
myClass
{
public:
static __thread int64_t m_minInt;
};
__thread int64_t myClass::m_minInt = 100;
當我編譯它,我得到這樣
error: ‘myClass::minInt’ is thread-local and so cannot be dynamically initialized
錯誤如何正確地做到這一點?
PS:gcc版本:4.6.3
@betabandido您鏈接的問題討論了在C++ 11中thread_local的替代方案。我的問題是如何使用gcc的__thread。特別是有問題的錯誤消息。我試圖在其他地方找到它,但無法得到它。謝謝。 – polapts