Random.Shared.Next 使用
Random.Shared.Next 是 .NET 6 引入的一个新特性,它提供了一个线程安全的随机数生成器。这意味着你可以在多线程环境中使用它,而不需要担心线程安全问题,如种子被意外修改等。
Random.Shared.Next 的使用方式如下:
int r1 = Random.Shared.Next();// 在0到int上限中随机。int r2 = Random.Shared.Next(10);// 从0到这个值之间随机,不会取到上限值。int r3 = Random.Shared.Next(20, 30);// 从20到30之间随机,不会取到30。double d1 = Random.Shared.NextDouble();// 获取一个0到1之间的小数,永远不会取到1。
Random.Shared 的实现类似于创建两个 Random 对象的解决方法,但是它是从 CLR 的底层实现的,比前面的实现方式更加高效。Random.Shared 的实现也是类似于上面的 ThreadStatic 的解法,但是是从 CLR 的底层去实现的,会比上面的实现方式更为高效。
总的来说,Random.Shared.Next 提供了一个简单且高效的方式来在多线程环境中生成随机数,无需担心线程安全问题。
浙公网安备 33010602011771号