override double DoSample()
byte bytes = new
return BitConverter.ToUInt32(bytes, 0) * mReciprocal;
In src/Numerics/Random/SystemCrypto.cs there's an option to make the instance thread safe. The above code sample is taken from the class and it is not thread safe.
System.Security.Cryptography.RandomNumberGenerator is not thread safe with respect to the instance members.
System.Security.Cryptography.RNGCryptoServiceProvider is thread safe, so this might have caused the confusion. I'm away from my IDE at the moment, otherwise I'd submit a patch. Just thought I'd point this out for now, though.