Heim > Backend-Entwicklung > C++ > Ist der Anspruch der GUID-Einzigartigkeit gültig?

Ist der Anspruch der GUID-Einzigartigkeit gültig?

Susan Sarandon
Freigeben: 2025-01-22 13:21:10
Original
287 Leute haben es durchsucht

Is the Claim of GUID Uniqueness Valid?

Kurzer Beweis, dass GUIDs nicht absolut eindeutig sind

Einführung

GUIDs gelten oft als einzigartig, aber hält das einer Überprüfung stand? Dieser Artikel befasst sich mit den Details der GUID-Generierung und stellt ein Codebeispiel bereit, das ihre angebliche Einzigartigkeit in Frage stellt.

Methodische Überlegungen

Der relevante Code iteriert von 0 bis 2128-1 und generiert für jede Iteration eine GUID. Obwohl mit einer langen Laufzeit des Programms gerechnet wurde, wurde es ungewöhnlich früh beendet.

Lösung

Um dieses Problem zu beheben, muss der Code gleichzeitig mit mehreren Threads ausgeführt werden. Dies ist eine verbesserte Version:

<code>for (long k = 0; k 
        {
            // 使用bigHeapOGuids检查冲突
        }
    }
}</code>
Nach dem Login kopieren

Dieser Ansatz verwendet Parallelverarbeitung, um kontinuierlich auf Konflikte zwischen neu generierten GUIDs und GUIDs zu prüfen, die bereits im bigHeapOGuids-Hash-Set gespeichert sind.

Diskutieren

Wenn Sie dieses Programm auf unbestimmte Zeit ausführen, ist es offensichtlich, dass die GUID nicht eindeutig ist. Dieser Code widerlegt das Eindeutigkeitsargument, indem er über einen großen Wertebereich iteriert und unweigerlich Duplikate erzeugt.

Haftungsausschluss

Die Nutzung dieses Programms unterliegt einzigartigen Lizenzbedingungen: 0,0001 $ pro Stunde und verwendetem CPU-Kern. Die Zahlung ist am Ende eines jeden Kalendermonats fällig. Für PayPal-Kontoinformationen wenden Sie sich bitte an den Autor.

Fazit

Dieser modifizierte Code beweist, dass GUIDs trotz weit verbreiteter Missverständnisse nicht von Natur aus eindeutig sind. Durch die Verwendung mehrerer Threads kann ein Programm effektiv auf Konflikte testen und den Irrtum sogenannter Eindeutigkeitsgarantien nachweisen.

Das obige ist der detaillierte Inhalt vonIst der Anspruch der GUID-Einzigartigkeit gültig?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage