Synchronize führt nichts aus



  • Hallo,

    Ich verwende hier den BCB2007 (Dec Update).
    Folgendes Scenario. Ich habe eine dll welche diverse grafische Darstellungen macht. Diese dll wird von einem Hauptprogramm aufgerufen.
    In der dll kann nun ein Thread gestartet werden, welcher Datenupdates durchführen soll. Das Rückschreiben der Daten in den Haupthread der dll erfolgt über Synchronize.
    Zur Zeit ist es jetzt so, dass das Synchronize genau einmal ausgeführt wird und nicht wieder zurückkommt. Die Funktion die dort übergeben ist wird nicht ausgeführt.
    Wenn ich mit dem Debugger in Synchronize reingehe stoppt die Ausführung bei WaitForSingleObject(SyncProcPtr.Signal, INFINITE); in TThread::Synchronize.
    Dann passiert erstmal nichts mehr. Das Programm in der dll und das Hauptprogramm kann weiter bedient werden.
    Wenn ich jetzt den dll-Teil schließe geht der Debugger plötzlich in die Funktion, die Synchronize eigentlich ausführen sollte. Es scheint also so, als ob der Thread blockiert ist.

    Ist einigermaßen verständlich was ich meine? Hat jemand eine Idee was das sein könnte?

    Ciao


Log in to reply