Kurze Frage zur Threadsicherheit von Messageboxen
-
Nur dies: Gehe ich recht in der Annahme, dass es nicht threadsicher ist, aus einem Hintergrundthread eine Messagebox mit ShowMessage() oder MessageBox() anzuzeigen?
-
Die ganze VCL ist nicht threadsicher, bzw. unterstützt kein Multithreading. Wenn du VCL Funktionalität benutzen willst muss das über den Hauptthread der Anwendung passieren. Guck dir mal die Funktion Synchronize() an, mit ihr kann man Funktionsaufrufe durch den Hauptthread durchführen.
-
Die Geschichte ist soweit klar. Der Hauch einer Unsicherheit, der zu meiner Frage führte rührte lediglich daher, dass ich ja nicht auf eine Form zugreife.
-
Hallo
Das spielt keine Rolle, da wie schon gesagt die VCL-MessageBox automatisch den Haupttread der Anwendung benutzt, wo ja auch alle Forms laufen. Deshalb muß beim Aufruf der MessageBox-Funktion aus einem Nebenthread mit dem Haupttread synchroniziert werden.
bis bald
akari