c++ - 将 srand 用于随机种子时重复输出

标签 c++ random srand

<分区>

我正在使用 srand (time(NULL));生成随机种子。

问题是,我要向 LINUX 集群提交 30 多个相同的作业。如果我一次提交一个,一切都很好,但我当然更喜欢使用批处理作业一次提交所有 30 个。更容易和更快。问题是,然后几批作业似乎都在同一时间访问,我得到了重复的结果!任何人都可以建议一个简单的解决方案吗?

最佳答案

考虑从 /dev/random/dev/urandom 读取。它们具有比 rand()(通常只是一个简单的线性同余生成器)更高质量的随机性,并且 /dev/random 会阻塞直到建立足够的熵。

关于c++ - 将 srand 用于随机种子时重复输出,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26197813/

相关文章:

c++ - Eclipse C++ OpenGL - 无法构建项目

c++ - 使用 Makefiles 在 Eclipse CDT 中进行错误检查

c++ - 在函数之间共享变量 - rand() srand

c - 下面的 srand(getpid()) 和 rand() 在做什么?

c++ - 如何禁用 eclipse cdt 中的所有代码分析?

c++ - 重用 Asio 连接

r - 你如何在 R 中生成多元高斯随机数?

python - 字节可以安全地从 UUID 中删除并仍然期望它保持其唯一性吗?

postgresql - Amazon Redshift - SQL - 在多个 ROW_NUMBER() ORDER BY 子句中调用时 RANDOM() 的行为

c - 是否允许 srand(0) 具有与 srand(1) 相同的效果?