Die Implementierung einer gleichzeitigen LinkedHashMap

Ich versuche zu schaffen, eine gleichzeitige LinkedHashMap für eine Multithread-Architektur.

Wenn ich Collections#synchronizedMap(), ich hätte zu verwenden synchronisierte Blöcke für die iteration. Diese Umsetzung würde dazu führen, dass die sequenzielle addition von Elementen.

Wenn ich ConcurrentSkipListMap gibt es eine Möglichkeit zu implementieren, eine Comparator zu speichern sequentiell, gespeichert ist, in der Verknüpften Liste oder queue.

Ich möchte mit java gebaut, die statt des Drittanbieter-Pakete.

EDIT:

In diesem gleichzeitigen LinkedHashMap, wenn die Schlüssel sind die Namen, ich möchte die keys in der Reihenfolge Ihrer Ankunft. d.h. neuer Wert angehängt werden, entweder beim start oder Ende, aber der Reihe nach.

Während der Iteration, die LinkedHashMap Hinzugefügt werden könnten, mit neue Einträge oder entfernt werden. aber der iteration werden sollte, in welcher Reihenfolge die Einträge Hinzugefügt wurden.

Verstehe ich, dass durch die Verwendung Collections#synchronizedMap() eine synchronized-block für die iteration ausgeführt werden müßte, aber würde die Karte geändert werden (Einträge Hinzugefügt/entfernt), während es gerade Durchlaufen.

Was getter/setter sind redest du? Was versuchen Sie zu "speichern sequentiell"? Geben Sie bitte mehr details - es ist schwer zu verstehen, was Sie wirklich versuchen zu tun im moment.
Was sind Sie versuchen zu speichern, die nacheinander? Wenn Sie Ihre Tasten haben eine definierbare Ordnung, dann sollten Sie in der Lage zu schreiben, einen Komparator. Vielleicht sollten Sie noch mehr Informationen über den Schlüssel in Ihren anzeigen und wie Sie Sie bestellt haben.

InformationsquelleAutor Nilesh | 2010-04-23

Schreibe einen Kommentar