Beispielimplementierung für einen Objekt-Pool
-
Hallo Forum,
kennt jemand von euch einen Link zu einer guten Beispielimplementierung für einen Pool? Er sollte vor allem Threadsave und "javatypisch" sein.
Mein Problem ist, dass ich ein paar Programme habe, die sagen wir mal aus einer Single-User/Single-Threaded Umgebung stammen und jetzt auf eine Multi-User/Multithreaded Umgebung umgestellt werden müssen. In den Programmen werden viele Singletons verwendet. Diese Singletons möchte ich nun in "normale" Klassen umschreiben. Ich kann die Stellen, wo die Singletons gerufen werden, nicht einfach "new MyClass()" schreiben, da es wichtig ist das diese Objekte ihren Zustand behalten. Ich möchte diese Objekte auch nicht in der main oder im "Hauptprogramm" erstellen und überall reinreichen. Der Anpassungsaufwand wäre enorm.
Also dachte ich daran, einen Pool zu schreiben (so ähnlich wie ein ConnectionPool) der diese Objekte verwaltet und in einem Programmdurchlauf immer das selbe Objekt liefert (was vorher ein Singleton war). Ein anderer Thread würde sich genauso verhalten, hätte aber sein eigenes Objekt. Es kommen noch ein paar andere Probleme in diesem dazu, aber ich glaube dass sie vorerst nicht wichtig sind.
Könnt Ihr mich vielleicht in die richtige Richtung schubsen?
-
http://commons.apache.org/pool/
MfG SideWinder
-
Super vielen Dank!