首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C++ >

怎么让一个类型的变量在一个线程同时只有1个存活

2013-09-07 
如何让一个类型的变量在一个线程同时只有1个存活我有一个类型 A一个线程thread然后这个线程内部创建了一个

如何让一个类型的变量在一个线程同时只有1个存活
我有一个类型 A
一个线程thread
然后这个线程内部创建了一个类型为A的变量
但是这个类型为A的变量在析构以前不允许其他同类型对象的在thread存在
但是如果这个时候thread切换到thread2
然后thread2创建了一个A,那么这个没有错

总之就是
一个线程内只能有1个A存活
[解决办法]
Thread Local Storage (TLS) 

__declspec( thread )
[解决办法]
os的tls数量有限制,可以使用boost库的tls子库。

热点排行