Die einzige Garantie Sie haben, ist diese Wahrscheinlichkeit auf Ihrer Seite ist. 2^128 mögliche GUIDs und etwas Cleverness im Erstellungsprozess machen es sehr unwahrscheinlich, dass Sie jemals ein Duplikat sehen werden.
Es scheint V4 ist die Standard-GUID unter Windows jetzt. Wenn diese rein auf einem Pseudozufallszahlengenerator basiert, wie Wikipedia dies zu zeigen scheint, wird sie von der Birthday problem beeinflusst.
Ich habe mehrere Beispiele mit 128-Bit gesehen, um zu zeigen, dass ein Duplikat fast unmöglich ist. Diese vermissen oft zwei Dinge. Das Geburtstagsproblem und dass eine V4-GUID tatsächlich 124 Bits ist.
Sie benötigen 1/2+sqrt(1/4-2*2^124*ln(0,5)) ≈ 5.4*10^18
GUIDs, um eine 50% ige Chance auf ein Duplikat zu erreichen. Das ist immer noch viel, aber 50% sind vielleicht nicht das Geschäft, nach dem Sie suchen. Sagen wir, Sie möchten, dass es eins zu einer Million ist, um ein Duplikat zu erhalten, dann können Sie sqrt(2*2^124*ln(1/(1-0,000001)))
≈ 6,5 * 10^15 GUIDs haben. Wenn Sie tausend GUIDs pro Sekunde erstellen, können Sie dies fast 206667 Jahre lang tun, bevor Sie ein Risiko von ein bis einer Million erreichen, ein Duplikat zu erhalten. 6,52191054316287e15/(3600*24*365,25*1000) ≈ 206666,874006986
Die Chance, dass alle diese Berechnungen korrekt sind → 0.
könnte dies helfen: http://stackoverflow.com/questions/39771/is-a-guid-unique-100-of-the-time – Reza