简体   繁体   English

c 中的线程安全随机数生成器

[英]Thread safe random number generator in c

Does the c standard provide a thread safe random number generator where instead of using a global state the generator uses and modifies the provided state buffer? c 标准是否提供线程安全的随机数生成器,而不是使用全局 state 生成器使用和修改提供的 state 缓冲区? I'm familiar with drand48_r and rand_r but on the documentation it is said that rand_r is a weak random number generator and drand48_r is obsolete.我熟悉 drand48_r 和 rand_r 但在文档中说 rand_r 是一个弱随机数生成器,而 drand48_r 已过时。 What would be a good thread safe random number generator?什么是好的线程安全随机数生成器? I need one for double and one for int/long type.我需要一个用于 double 类型,一个用于 int/long 类型。 Also it would be great if it's portable.如果它是便携式的,那就太好了。

C17 defines the random functions rand() (7.22.2.1) and srand() (7.22.2.2). C17 定义了随机函数rand() (7.22.2.1) 和srand() (7.22.2.2)。 Neither are required are required to avoid data races.两者都不需要以避免数据竞争。

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM