Zwar ist immer noch nicht klar warum es an dieser Stelle 'knallt' aber, dass muss dann wohl einen anderen Grund haben als das Multi-Threading.
Vielen Dank für die Antworten!
Grüße Matthias
Es liegt nicht an den lokalen Variablen
Update:
Bzw. es kann schon daran liegen, allerdings ist die Ursache eine falsche Handhabung.
Eine lokale Variable ist beim Aufruf nicht initialisiert. Soll heißen, die zeigt auf irgendeine Stelle im Speicher.
Greift man nun auf diese Variable einfach so zu, dann können die lustigsten Sachen passieren.
z.B. das hier
Delphi-Quellcode:
procedure TForm1.Foo;
var
LForm : TForm;
begin
LForm.Close;
end;
kann zu einer
Exception oder auch dazu führen, dass eine x- beliebige Form geschlossen wird
Darum schmeisst der Compiler auch eine Warnung aus, wenn eine lokale Variable nicht initialisiert wurde.
Das solltest du zuerst prüfen (Compiler-Warnungen, Initialisierung der lokalen Variablen)
Danach, ob irgendwelche Abhängigkeiten von aussen (z.B. bei einer lokal erzeugten
Query eine "globale" Connection benutzen) eingeschleust werden.