Es gibt einen Unterschied zwischen
threadsafe und
threadaffin. Die meisten Klassen sind
nicht thread
safe aber - gottlob - auch nicht thread
affin.
- threadsafe
Von jedem Thread kann auf die Eigenschaften der Klasse zugegriffen werden.
- threadaffin
Auf die Eigenschaften der Klasse darf nur im Erzeuger-Thread zugegriffen werden
- ganz blöd
Die Klasse ist noch mit einem globalen (oder wie auch immer aufgehängtem) Kontext verwoben, der auch noch threadaffin ist (idR. mit dem MainThread)
TBitmap
gehört eindeutig zur Kategorie
ganz blöd.
Wenn jemand so etwas in einem Thread verwendet und
keine Probleme damit hat, dann jeden Abend das in das Nachtgebet mit einschliessen und weiter hoffen. Es ist keine zugesicherte Eigenschaft und läuft wohl eher durch Zufall (oder man hat sich irgendwo durch die Hintertür eine Synchronisation eingefangen). Anyway, empfehlen würde ich es nicht und darauf bauen erst recht nicht.
Aber eine Hummel kann eigentlich auch nicht fliegen und tut es trotzdem, weil ihr die Physik und Aerodynamik fremd und sowas von egal sind.