Mit einer Menge von Daten zu verarbeiten Ich habe versucht, sie parallel zu machen.Datenbank Multithreading mit beibehaltenen Sequenz-Updates auf Primärschlüssel
Aber das Problem, das auftritt, war, dass in einem Testfall habe ich erste 6 Aufgaben zum gleichen Primärschlüssel. Die Reihenfolge der Aufgaben mit demselben Primärschlüssel (ID) ist wichtig und darf nicht geändert werden. Derzeit habe ich keine Garantie dafür.
Beispiel:
items = [{id: 1, data: "a"}, {id: 1, data: "b"}, {id: 2, data: "g"}]
Ich weiß, muss dass a
war vorb
, und alle Aufgaben im Threadpool ausgeführt garantiert nicht, dass. Es besteht die Möglichkeit, dass a
b
überschreibt.
Gibt es ein gutes Designmuster, um dieses Problem zu lösen?
gefunden werden, da nichts in diesem Code gibt es das, was „die Reihenfolge der Aufgaben mit dem gleichen Primärschlüssel“ * zeigt * bedeutet eigentlich. –
Ich habe meine Frage verbessert. Ich hoffe, es ist jetzt in Ordnung. –