欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

C#短时间内产生大量不重复的随机数

程序员文章站 2023-12-12 19:55:22
生成随机数可以用伪随机数发生器random,受种子控制生成伪随机数,默认以当前时间值为种子。如果程序运行的很快,就会导致在几乎同一时刻运行多次,肯定会有重复的。比如我们要生...
生成随机数可以用伪随机数发生器random,受种子控制生成伪随机数,默认以当前时间值为种子。如果程序运行的很快,就会导致在几乎同一时刻运行多次,肯定会有重复的。比如我们要生成1到10之间的5个随机数,则经常会产生 2 2 1 1 1这样的情况,那么如何得到非常随机的不那么重复的随机数呢?比如 4 2 3 3 5这样的。

有人说用thread.sleep(5) ,但我不推荐,因为这样会使系统减缓运行。

我采取的方法是:用种子guid.newguid().gethashcode(),在短时间里不会出现大量重复。

上一篇:

下一篇: