C ++提升线程ID和Singleton

时间:2010-04-18 20:09:20

标签: c++ boost singleton multithreading

很抱歉本周发布了这么多问题。

我假设thread.get_id返回的线程索引是特定于实现的。 在pthreads的情况下,索引是否被重用? IE,如果线程0运行并加入,是否会在具有不同ID之后启动线程?

我之所以要问这是需要实现单一模式的转折:每个线程都有自己的实例。我知道这听起来很疯狂,但是线程控制硬件(cuda),它不允许设备内存共享,即使在线程级别也是如此 实现这种模式的好方法是什么?

1 个答案:

答案 0 :(得分:5)

对于每个线程获得自己的实例的全局(单例),使用线程本地存储。为此,Boost有thread_specific_ptr