/*================================================= *@public ==================================================*/ int Random::Generate(int _size){ std::mt19937 gen(rd_); return uniform_int_distribution<> dis_(0, _size); } //Generate
void operator()(actor_system&, uplock& guard, const actor_vec& vec, mailbox_element_ptr& ptr, execution_unit* host) { upgrade_to_unique_lock<detail::shared_spinlock> unique_guard{guard}; auto selected = vec[dis_(rd_, decltype(dis_)::param_type(0, vec.size() - 1))]; unique_guard.unlock(); selected->enqueue(std::move(ptr), host); }
void UniformInt::giveRandomValue(void* column_addr) { *(int*)column_addr=dis_(gen_); }