因为普通的Random随机数是通过时间来生成的,如果在短时间调用多次的话会造成生成的随机数一致。
方法1:
每生成完随机数后让线程睡眠1ms:
thread.sleep(1);
方法2:
/// <summary>
/// 描 述:创建加密随机数生成器 生成强随机种子
/// </summary>
/// <returns></returns>
static int GetRandomSeed()
{
byte[] bytes = new byte[4];
System.Security.Cryptography.RNGCryptoServiceProvider rng = new System.Security.Cryptography.RNGCryptoServiceProvider();
rng.GetBytes(bytes);
return BitConverter.ToInt32(bytes, 0);
}
string num = new random(GetRandomSeed()).Next(10);