da mein Hauptthread und der Synchronisierung-Thread auf diese zugreifen.
Über die selbe Connection oder je Thread Eine?
Kann die Connection auch mit Multithread umgehen? (wenn eine Connection)
Und letztendlich, kann die
DB grundsätzlich multithreading? (das ist fast immer möglich)
Zitat:
Ich würde alle Datenbank Zugriffe in einem Thread laufen lassen und den Zugriff über diesen Thread serialisieren...
(So mache ich es)
Keine Probleme...
Wenn DataSets an der
VCL hängen, dann meinst du doch bestimmt den Haupthtread?
Es kann sein, dass Zugriffe asynchron sind, also nach/außerhalb "deiner" Sperre erneut zugreifen.
z.B. bei Grids/DataSources mit Fetching, also wo beim Open (ausführen des SELECT) nicht sofort alle Daten geholt werden, sondern z.B. immer nur der Teil welcher grade im Grid sichtbar ist ... scrollst du dann im Grid, werden dabei dann die fehlenden Daten gezogen.
Das
DBMS hält in diesem Fall das ResultSet so lange bei sich geladen, bis das Programm die Verbindung zu diesem ResultSet beendet.