Nach Hause
Top.Mail.Ru Yandeks.Metrika
Forum: "Haupt";
Aktuelles Archiv: 2002.04.01;
Herunterladen: [xml.tar.bz2];

Nach unten

TThread Finden Sie ähnliche Zweige


lipskiy   (2002-03-20 20:32) [0]

Warum kann der Parameter Synchronize keine Prozedur mit Parametern angeben? Dies ist sehr unpraktisch - Sie müssen globale Variablen durcharbeiten. Warum? Kann man mit den Parametern noch telefonieren?



Юрий Зотов   (2002-03-20 20:44) [1]

Weil so gemacht. Und globale Variablen sind völlig optional. In der Hilfe gibt es ein Beispiel.

procedure TMyThread.MyMethod;
beginnen
AnyMetod (AnyParamList); // Hier ist es - jede Parameterliste
end;

Prozedur TMyThread.Execute;
beginnen
...
Synchronisieren (MyMethod);
...
end;



lipskiy   (2002-03-20 20:50) [2]

Hmm ... Das ist verständlich.
Aber hier sieht es in meinem Fall so aus.
Execute führt einen ziemlich langen, nicht verzweigten und nicht zyklischen Code aus. Nur eine Abfolge von Operationen. Zwischen diesen Operationen muss ich das Ergebnis auf dem Hauptformular drucken. Natürlich treten diese Zwischenergebnisse nur in Execute auf.
Was tun in diesem Fall?



Набережных С.   (2002-03-20 21:31) [3]

Ordnen Sie der Struktur oder den Variablen dynamisch Speicher zu und senden Sie den Zeiger über SendMessage, PostMessage oder Synchronize.
Eine weitere Option ist ein Puffer mit Synchronisation. Es gibt andere Optionen wie COM.



vuk   (2002-03-20 21:48) [4]

Ich weiß nicht wie jemand, aber ich würde einen ganz anderen Weg gehen. Richtig, etwas schwieriger stellt sich heraus.
Alle Parameter, die das Formular zur Anzeige des Ergebnisses benötigt, werden in eine Struktur (Datensatz oder Objekt) gepackt. Dann wird eine Liste erstellt (TThreadList), die als "Puffer" dient und in die der Thread die Ergebnisse seiner Arbeit einfügt. Außerdem verfügt der Thread über ein Formular-Handle, an das er eine Nachricht sendet, sobald ein Element zur Liste hinzugefügt wird. Das Formular, das die Nachricht erhalten hat, wählt Elemente aus der Liste aus, zeigt sie an und löscht sie dann.



lipskiy   (2002-03-20 21:53) [5]

Verdammt, gut, schlau zu sein ...
Ich verstehe das nicht alles ... (noch) nicht
Nun, okay, danke und darauf werde ich verstehen.
Nur mein Niveau unter Ihren Vorschlägen.



Набережных С.   (2002-03-20 21:55) [6]


> vuk © (20.03.02 21: 48)

"Ein anderer Weg" - in welchem ​​Sinne?
Sehen > Eine weitere Option ist ein Puffer mit Synchronisation.




vuk   (2002-03-20 21:59) [7]

nach Naberezhnye S .:
> "Ein anderer Weg" - in welchem ​​Sinne?
Ich werde übersehen. : o (
Nun, niemand wurde schlimmer. : o)



Набережных С.   (2002-03-20 22:05) [8]

Ich entschuldige mich auch - schrieb für nichts.



Seiten: 1 ganze Branche

Forum: "Haupt";
Aktuelles Archiv: 2002.04.01;
Herunterladen: [xml.tar.bz2];

nach oben









Speicher: 0.57 MB
Zeit: 0.021 c
1-215
kserg@ukr.net
2002-03-20 11:48
2002.04.01
MDI-Anwendung: Wie kann das übergeordnete Fenster (es sind noch keine Kinder vorhanden) oder ein untergeordnetes Fenster (dann welches Fenster) aktiv ermittelt werden?


1-83
LenAk
2002-03-21 07:58
2002.04.01
Wie kann festgestellt werden, welche Komponente des Formulars den Fokus hat?


7-321
Aleksandr
2001-12-28 11:08
2002.04.01
Wie kann man herausfinden, ob eine große oder kleine Bildschirmschriftart im System installiert ist?


1-223
Maxie
2002-03-20 12:50
2002.04.01
Array von Objekten.


14-294
Fellomena
2002-02-13 15:53
2002.04.01
Erinnere dich an mich in deinen Gebeten - in der nahen Zukunft war ich zu Fortran verurteilt = (





Afrikanisch Albanien Arabisch Armenisch Aserbaidschanisch Baskisch Weißrusse Bulgarian katalanisch Chinesisch (vereinfacht) Chinesische Tradition) kroatisch Tschechisch Dänisch Dutch Englisch estnisch Philippinisch Finnish Französisch
Galicisch Georgisch Deutsch Griechisch haitian Creole Hebräisch Hindi ungarisch isländisch Indonesian irisch Italian Japanisch Koreanisch lettisch litauisch Makedonisch Malay Maltesisch Norwegian
persisch Polnisch Portugiesisch Rumänisch Russisch serbisch Slovakisch Slowenisch Spanisch Suaheli Swedish Thai Türkisch Ukrainisch Urdu Vietnamesisch Walisisch Jiddisch Bengalisch bosnisch
cebuano Esperanto Gujarati Hausa Hmong igbo Javanisch kannada khmer Laotisch Lateinisch Maorisch Marathi Mongolisch nepali Pandschabi Somalisch Tamilisch Telugu Yoruba
Zulu
Английский Französisch Deutsch Italienisch Португальский Russisch Spanisch