Auch bei ShowMessage bzw. Exceptions? ich hab im Hinterkopf, das da automatisch was eigenes für erzeugt wird?
Also wenn man
dem hier Glauben schenkt, dann ist nur Windows.MessageBox() (mit owner=nil !) threadsafe.
wenn Du unter Formular das Hauptformular verstehst (und nicht das DM) dann nein.
Wenn du auf das Datenmodul bzw. dessen Komponenten nur aus dem Thread zugreifst, sollte das OK sein. Hast du aber z.B. an der gleichen
ADO-Connection noch eine
Query und daran z.B. datensensitive Controls angebunden (oder greifst sonstwie aus dem Mainthread darauf zu), hast du ein Problem.