Forum: Sonstige Fragen zu Delphi
Delphi
by sirius,
9. Okt 2008
Das ist schon ziemlich entscheidend. Synchronize synchronisiert nämlich ausschließlich nur mit dem Hauptthread.
Ansonsten hast du irgendetwas innerhalb der critical section stehen (z.B. ein Application.Processmessages), was den Deadlock dann quasi direkt aufruft.
Forum: Sonstige Fragen zu Delphi
Delphi
by sirius,
8. Okt 2008
Verschiedene Synchronisationsmethode mischen kanntödlich sein. Da sollte man zumindest genau wissen, was die machen.
Erhlich gesagt, habe ich dein Problem im speziellen nicht ganz verstanden. Du hast also mindestens 3 Threads: den MainThread und 2 weitere Threads (thread1 und thread2). Soweit richtig? Thread2 geht über synchronize ind die CS und Thread1 geht direkt in die CS.