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
This commit is contained in:
Giacomo Pozzoni
2020-07-18 19:34:45 +00:00
committed by Ovahlord
parent cbd6fb2315
commit 52d9bb2538

View File

@@ -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)