Forum: Win32/Win64 API (native code)
Delphi
by Proddi,
27. Feb 2004
Threads ist so eine Sache. Dazu müsste ich intern viele LOCK-Mechanismen einbauen, die ich mir bisher gespart habe. deswegen auch nur dieses synthetische Multitasking (wie heisst das richtig? ..präemtives MT??).
Ich denke mal der Knackpunkt ist meine Rangehensweise:
* Eine Funktion liefert in einer Zeit (0-timeout) ein ergebnis zurück (natürlich mehrfach gleichzeitig ausrufbar).
Ich sollte...
Forum: Win32/Win64 API (native code)
Delphi
by Proddi,
26. Feb 2004
@Matze
Dein Code läuft, kein Zweifel, aber ohne Rekursion. Dein ProcessMessages ruft nicht wirklich ein weiteres ProcessMessages auf. In deinem Beispiel wird das ProcessMessages immer der Reihe nach aufgerufen. Du hast nur 2 geschachtelte Schleifen, das ist aber keine Rekursion.
Das was ich meinte ist, wenn ein ProcessMessages#1 ein Event deiner Application aufruft, in dem du wiederum auch...
Forum: Win32/Win64 API (native code)
Delphi
by Proddi,
26. Feb 2004
Okay, ich beantworte mittlerweile mein Problem selbst :)
Das ganze führt zu einer Rekursion.
Also 1. ProcessMessages läuft: Eine MSG (bspw. Timer) löst in derselben Application ein 2. ProcessMessages aus. Dann bekommt, solange das 2. ProcessMessages läuft, das 1. ProcessMessages keine Rückmeldung, ist ja noch nicht zurückgekehrt.
Danke Proddi :)
Problem nur: Wie löst man sowas auf...