Hallo Leute,
ich habe folgendes Problem: Ich erzeuge mehrere Threads, die verschiedene Dinge tun (aus DB Daten auslesen, Logging u.a.). Alle diese Threads schreiben Nachrichten über einen Delegaten in eine ListBox des Hauptformulars. Im Hauptformular gibt es eine entsprechende Funktion, die per 'BeginInvoke' den Haupt-Thread bedient. Schon ab zwei Threads gibt es bei mir nun den unerwünschten Effekt, daß der Haupt-Thread (in dem sich das Formular befindet) so gesperrt wird, daß sich weder das Formular mit der Maus bewegen läßt, noch irgend welche Buttons auf Mausaktionen reagieren. Leider helfen auch Thread.Sleep(...) oder Application.DoEvents() nicht. Alle Beispiele, die ich zum Thema Threads->Invoke->Control gefunden habe, behandeln nur einen Thread. Kann mir jemand sagen, was ich tun muß, damit das Hauptformular auch bei mehreren Threads trotzdem noch bedienbar bleibt?
Danke schon mal im Voraus!
93C.
ich habe folgendes Problem: Ich erzeuge mehrere Threads, die verschiedene Dinge tun (aus DB Daten auslesen, Logging u.a.). Alle diese Threads schreiben Nachrichten über einen Delegaten in eine ListBox des Hauptformulars. Im Hauptformular gibt es eine entsprechende Funktion, die per 'BeginInvoke' den Haupt-Thread bedient. Schon ab zwei Threads gibt es bei mir nun den unerwünschten Effekt, daß der Haupt-Thread (in dem sich das Formular befindet) so gesperrt wird, daß sich weder das Formular mit der Maus bewegen läßt, noch irgend welche Buttons auf Mausaktionen reagieren. Leider helfen auch Thread.Sleep(...) oder Application.DoEvents() nicht. Alle Beispiele, die ich zum Thema Threads->Invoke->Control gefunden habe, behandeln nur einen Thread. Kann mir jemand sagen, was ich tun muß, damit das Hauptformular auch bei mehreren Threads trotzdem noch bedienbar bleibt?
Danke schon mal im Voraus!
93C.