CSharp · Console
using System;
public class Program
{
public static void Main()
{
int match = 0;
int fail = 0;
int windowHit = 0;
for (int i=0; i<32; i++) {
int tick = Environment.TickCount;
var r1 = new Random();
var r2 = new Random();
int tickClose = Environment.TickCount;
if (tick == tickClose) {
// both r1 and r2 seeded during same Enviroment.tickCount window
windowHit++;
}
if (r1.Next() == r2.Next()) {
match++;
} else {
fail++;
}
}
Console.WriteLine($"Hit Environment.TickCount window {windowHit} times");
Console.WriteLine($"Collisions: {match}");
Console.WriteLine($"Unique first elements: {fail}");
}
}