Zum Testen while Schleife entfernt, sodass jeder Thread einmalig durchläuft.
Fehler bleibt.
Und welcher?
Ich verwende die Devart
MySql und
MSSql Libraries. Vermutich werden die Unidac ähnlich sein. Du kannst im Hauptthread eine Verbindung statisch oder dynamisch erzeugen. Dann diese in allen Threads Assignen. Dies nur als Info damit Du im Thread nicht jedesmal die Verbindungsdaten mitführen musst.
Delphi-Quellcode:
var
Qry: TMSQuery;
Conn: TMSConnection;
begin
Conn:= TMSConnection.Create(
Nil);
Conn.Assign(FMyGlobalMsConnection);
Qry:= TMSQuery.Create(
Nil);
Qry.Connection:= Conn;
Try
Try
except
on E:
Exception do LogException(e, '
MyException');
end;
Finally
Qry.Free;
Conn.Free;
End;
Die obige Aussage repräsentiert meine persönliche Meinung.
Diese erhebt keinen Anspruch auf Objektivität oder Richtigkeit.