mirror of
https://github.com/TrinityCore/TrinityCore.git
synced 2026-01-15 23:20:36 +01:00
Core/Threads: Replace Boost TLS with C++11 one (#15782)
* Core/Threads: Replace Boost TLS with C++11 one
Replace boost::thread_specific_ptr<T> thread-local storage with C++11 thread_local to remove libboost_thread dependency from common project
* Fix no-pch build
(cherry picked from commit 00b16992f1)
This commit is contained in:
@@ -18,23 +18,18 @@
|
||||
#include "Random.h"
|
||||
#include "Errors.h"
|
||||
#include "SFMTRand.h"
|
||||
#include <boost/thread/tss.hpp>
|
||||
#include <memory>
|
||||
#include <random>
|
||||
|
||||
static boost::thread_specific_ptr<SFMTRand> sfmtRand;
|
||||
static thread_local std::unique_ptr<SFMTRand> sfmtRand;
|
||||
static RandomEngine engine;
|
||||
|
||||
static SFMTRand* GetRng()
|
||||
{
|
||||
SFMTRand* rand = sfmtRand.get();
|
||||
if (!sfmtRand)
|
||||
sfmtRand = std::make_unique<SFMTRand>();
|
||||
|
||||
if (!rand)
|
||||
{
|
||||
rand = new SFMTRand();
|
||||
sfmtRand.reset(rand);
|
||||
}
|
||||
|
||||
return rand;
|
||||
return sfmtRand.get();
|
||||
}
|
||||
|
||||
int32 irand(int32 min, int32 max)
|
||||
|
||||
Reference in New Issue
Block a user