Der Backgroundthread bekommt alle Informationen zum Abarbeiten als Kopie übergeben, bearbeitet das und benachrichtigt, dass er damit fertig ist. Dann kann wer auch immer sich dieses abholen.
Kommt immer auf den Anwendungsfall an, ich verstehe das Beispiel so, dass in:
Delphi-Quellcode:
procedure TPaintThread.Execute;
begin
While (Terminated = False) do
begin
CalcABitmap(MyBild); // komplexe zeichenoperation...
Synchronize(Zeichnen);
sleep(1);
end;
end;
..auf eine thread-interne ressource gezeichnet wird, CalcABitmap() benötigt entspr. Zeit und - wenn fertig - wird zum mainthread context gewechselt ... und da kann das bild ja abholen wer will ... in dem beispiel wirds halt in ein TImage geblittet und somit am schirm ausgegeben ...