Linux c 编程问题请教,同一时间运行多个相同的程序,如何确保每个程序生成的随机数在彼此之间也是随机的?

2022-09-16 16:18:40 +08:00
 qemu32

https://stackoverflow.com/questions/822323/how-to-generate-a-random-int-in-c

stackoverflow 上的这个问题最高赞的回答不能满足我的要求,因为同一时间运行多个调用 rand() 的程序,生成的随机数在这几个程序之间都是一样的,因为种子都是当前时间,这个问题下面的其他答案我也试了,比如用 openssl 生成的也不是真正的随机数。

我希望有一种办法能生成真正的随机数。

2233 次点击
所在节点    Linux
21 条回复
litguy
2022-09-18 09:17:29 +08:00
@qemu32 直觉是想阻止多核处理器上面进程并发恰好同一个时刻同时读取设备,得到同样的数字,而当时当前时间又不能区分它们

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/880604

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX