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
7-333
Filat
2001-12-29 12:42
2002.04.01
Ohhh, die Registry! Ohhh, DATEIEN


14-298
Ajax
2002-02-18 23:11
2002.04.01
astalaViSta geld sparen


6-266
Hecker
2002-01-19 06:15
2002.04.01
Wer weiß wie?


1-153
Zool
2002-03-21 20:51
2002.04.01
DirectX


1-93
Ahd
2002-03-19 11:31
2002.04.01
Dimetrie





Afrikanisch Albanien Arabisch Armenisch Aserbaidschanisch Baskisch Weißrusse Bulgarisch katalanisch Chinesisch (vereinfacht) Chinesisch (traditionell) kroatisch Tschechisch Dänisch Niederländisch Englisch estnisch Philippinisch Finnisch Französisch
Galicisch Georgisch Deutsch Griechisch haitian Creole Hebräisch Hindi ungarisch isländisch Indonesian irisch Italienisch Japanisch Koreanisch lettisch litauisch Makedonisch Malay Maltesisch Norwegisch
persisch Polnisch Portugiesisch Rumänisch Russisch serbisch Slovakisch Slowenisch Spanisch Suaheli Schwedisch 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