Äh ja, wollt ich ja noch dazuschreiben. Sorry.
Ja, Canvasopperationen bzw.
GDI Sachen sind nicht Threadsicher.
Was ich dir vorschlagen würde ist die Berechnung im/in den Thread(s) durchzuführen.
Die graphische Ausgabe allerdings im Hauptthread also der Anwendung zB. über einen Timer erledigen lassen.