Am Synchronize hats gelegen! Allerdings muss ich ja irgendwie die Teilbilder zusammenfügen.
Übers OnTerminate-Ereignis geht es nicht, da das auch zu einem DeadLock führen würde.
Nun habe ich die Deklaration für die Teilbilder in den public-Bereich geschrieben.
Wenn WaitForMultipleObjects beendet ist, rufe ich folgenden Code auf:
Delphi-Quellcode:
for i := 0 to ThreadCount-1 do
begin
fertig_Bild.Canvas.Draw(0, Thread[i].StartYt, Thread[i].Finish);
Thread[i].Finish.Free;
end;
Trotzdem wird der Speicher von Finish nicht wieder freigeben. Wieso?
Edit: FreeOnTerminate hab ich auf false gesetzt.