Lenovo23456 hat folgendes geschrieben : |
Ich habe mehrere Threads angelegt und will in einem Memo sehen welcher gerade läuft. |
Dieser Ansatz ist fehlerhaft.
Es ist ja gerade das Wesen von Windows, allgemein von Multitaskingbetriebsprogrammen, möglichst viel möglichst gleichzeitig laufen zu lassen (bis zu einem bestimmten Maße jedenfalls).
Es läuft nicht brav erst der eine und dann der andere Thread, sondern i.d.R. mal mehr, mal weniger der Threads gleichzeitig / simultan.
Zudem entscheidet Windows viele, ja unzählige Male in jeder Sekunde, welchen Thread es stoppt und welchen es weiterlaufen läßt.
Wie wollte man so etwas sinnvoll anzeigen?
Lenovo23456 hat folgendes geschrieben : |
Seit dem ich die Synchronize Methode eingebaut habe, läuft das nicht mehr wie gewollt. |
Natürlich, denn Synchronize ist der Engpaß, neudeutsch: Flaschenhals.
Die Thread stehen alle Schlange, mit dem VCL-Thread in Kontakt treten zu dürfen, und solange stehen sie still. Wie bei einer menschlichen Warteschlange eben.