Genau so ist es. Man könnte sogar die Connection selbst neu erzeugen.
Das verlangsamt das aber alles noch mehr wegen den mehrfachen Connects.
Die
DB-Komponenten müssen bei einer gemeinsamen Connection
dann aber threadsafe sein, weil ja die Connection nur einmal vorhanden ist.
Siehe Eingangsfrage. Man kommt ums Praxistesten gar nicht herum. Denn selbst wenn man die Datenbank komplett aus dem Multithreading raus lässt gibts immer noch mehrere Wege wie man verfahren kann. Zum Bsp. Ergebnisdatenmengen erstmal in Record-Arrays zwischenspeichern und dann in einem Rutsch im Mainthread in die Datenbank wuppen. Da hat man dann aber eine Menge Allokation. Oder man synchronisiert jede Datenbankschreiberei. Wobei zumindest auf meinem Testsystem jegliches Synchronize sehr negativ auf die Laufzeiten wirkt.