Einzelnen Beitrag anzeigen

Benutzerbild von Sir Rufo
Sir Rufo

Registriert seit: 5. Jan 2005
Ort: Stadthagen
9.454 Beiträge
 
Delphi 10 Seattle Enterprise
 
#9

AW: Thread mit komischem Verhalten

  Alt 19. Jan 2016, 10:05
@Medium

Das Problem hängt mit der Koppelung zwischen TBitmap und TCanvas zusammen. Der Canvas selber wird allerdings lazy erstellt (was manchmal selbst zu seltsamen Ergebnissen führt, die sich durch ein einfaches myBitmap.Canvas; lösen können.

TCanvas ist nicht thread-safe und kann auch nicht thread-safe verwendet werden (intern gibt es da globale Abhängigkeiten) und darum ist TBitmap nicht thread-safe.

Was allerdings nicht heißt, dass es keine Anwendungen gibt, die ein TBitmap in einem Thread verwursten und es sogar funktioniert. Die haben einfach nur Glück wenn es funktioniert. Diese "race conditions" tauchen auf, wenn sie wollen und nicht wenn man es von ihnen erwartet
Kaum macht man's richtig - schon funktioniert's
Zertifikat: Sir Rufo (Fingerprint: ‎ea 0a 4c 14 0d b6 3a a4 c1 c5 b9 dc 90 9d f0 e9 de 13 da 60)
  Mit Zitat antworten Zitat