close
C#中產生GUID的方法為 Guid g = Guid.NewGuid();
guid是用電腦的網卡編號+cpu編號+時間+亂數產生的
GUID是128位元的整數所以總共有 2^128 = 3.4028236920938e+38 個數值
假設每秒產生1000個GUID那麼一年共產生 60*60*24*365*1000 = 31536000000 個GUID
把總數除以每年產量得知 (2^128) / 31536000000 = 107902830707806014188970529154.99 年後
將會把所用的GUID用完
但是考慮到已產生的GUID越多就越有可能跟新產生的GUID重覆
所以要控制在一個比較安全的機率下假設是1000兆分之1
107902830707806014188970529154.99 / 1000兆 = 107902830707806.014 年
以上分析可得知
一台電腦日以繼夜全年無休以每秒產生1000個GUID的速度下
在107902830707806.014 年之內GUID重覆的機率在 1000兆分之1以下
全站熱搜