Считалось, что до RIO TBitmap НЕ потокобезопасен. В RIO рапортовали, что справились с этим. Не помню, проверял кто или нет
Но TBitmapSurface был потокобезопасен уже тогда. Возможно, стоит готовить данные там, а потом просто отдавать в Bitmap
https://stackoverflow.com/questions/37602538/delphi-tbitmap-to-string-via-tbitmapsurface-and-back-to-tbitmap
https://stackoverflow.com/questions/51523321/how-to-draw-fmx-surface-tbitmapsurface-on-fmx-graphics-tbitmap/51526855