bufferedRandomDevice->get(data, size);
}
-folly::ThreadLocalPtr<ThreadLocalPRNG::LocalInstancePRNG>
-ThreadLocalPRNG::localInstance;
+ThreadLocalPRNG::ThreadLocalPRNG() {
+ static folly::ThreadLocal<ThreadLocalPRNG::LocalInstancePRNG> localInstance;
+ local_ = localInstance.get();
+}
class ThreadLocalPRNG::LocalInstancePRNG {
public:
Random::DefaultGenerator rng;
};
-ThreadLocalPRNG::LocalInstancePRNG* ThreadLocalPRNG::initLocal() {
- auto ret = new LocalInstancePRNG;
- localInstance.reset(ret);
- return ret;
-}
-
uint32_t ThreadLocalPRNG::getImpl(LocalInstancePRNG* local) {
return local->rng();
}