Fix usage of the double-checked locking (anti-)pattern in the cache manager singleton.
This commit is contained in:
@@ -30,18 +30,8 @@
|
|||||||
CacheManager*
|
CacheManager*
|
||||||
CacheManager::getInstance(void)
|
CacheManager::getInstance(void)
|
||||||
{
|
{
|
||||||
static CacheManager* instance_ = 0;
|
static CacheManager instance_;
|
||||||
|
return &instance_;
|
||||||
if ( instance_ == 0 ) {
|
|
||||||
static MyMutex smutex_;
|
|
||||||
MyMutex::MyLock lock(smutex_);
|
|
||||||
|
|
||||||
if ( instance_ == 0 ) {
|
|
||||||
instance_ = new CacheManager();
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
return instance_;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
void CacheManager::init ()
|
void CacheManager::init ()
|
||||||
|
Reference in New Issue
Block a user