我正在开发一个项目,我需要生成大约10亿个GUID。
我知道GUID不能保证唯一,但几乎在所有时间都是独一无二的。
如果我生成了十亿个GUID,那么匹配的可能性是多少?
答案 0 :(得分:15)
http://blogs.msdn.com/b/oldnewthing/archive/2008/06/27/8659071.aspx
.NET GUID由
组成因此,奥斯卡引用的UUID概率在这里不起作用。但是如果你从一台计算机上创建了所有10亿个GUID,就没有机会获得重复(除了你正在玩时钟; - )
答案 1 :(得分:5)
如果您从同一台机器创建GUI并使用相同的算法,那么您将不会发生碰撞。
答案 2 :(得分:2)
http://en.wikipedia.org/wiki/Uuid#Random_UUID_probability_of_duplicates
概率68,719,476,736 = 2 ^ 36 = 0.0000000000000004 = 4×10 ^ -16)
2,199,023,255,552 = 2 ^ 41 = 0.0000000000004 =(4×10 ^ -13)
70,368,744,177,664 = 2 ^ 46 = 0.0000000004 =(4×10 ^ -10)