【发布时间】:2011-10-10 17:30:42
【问题描述】:
有一个名为“pTrackerArray”的全局变量,用于 Loki 的 SetLongevity 函数。
pTrackerArray 的声明:
typedef std::list<LifetimeTracker*> TrackerArray;
extern LOKI_EXPORT TrackerArray* pTrackerArray;
SetLongevity 的定义:
template <typename T, typename Destroyer>
void SetLongevity(T* pDynObject, unsigned int longevity, Destroyer d)
{
using namespace Private;
// manage lifetime of stack manually
if(pTrackerArray==0)
pTrackerArray = new TrackerArray;
// For simplicity, the rest of code is omitted
...
}
在 SetLongevity 中使用 pTrackerArray 是否是线程安全的?
【问题讨论】:
标签: c++ multithreading singleton loki