PostThreadMessage
-
Hallo zusammen.
Wie mache ich, wenn ich mit PostThreadMessage einem Thread eine Message schicke, dass diese erst abgearbeitet, bevor es im aktuellen Thread unter PostThreadMessage weitergeht??????????????????????
-
Indem du mehr Fragezeichen schreibst und einfach nach dem Abarbeiten eine Antwort vom 2.Thread schickst, und den ersten Thread solange warten laesst, bis das da ist.
der Guenther
-
Sorry wegen den Fragezeichen
Immerhin habe ich eine schnelle Antwort bekommen
Leuchtet jedenfalls ein, werds dann mal so umsetzen 
Danke!
-
Vielleicht noch:
Wie tue ich einen Thread am einfachsten warten lassen, bis die Nachricht eintrifft?
Sleep funktioniert da wohl nicht...
Wie gehts?
-
Indem du einfach (und etwas dreckig) in ner Schleife auf deine Antwort wartest.
Da gibt es sicher noch schoenere Moeglichkeiten.
der Guenther
-
dieser Art?
PostThreadMessage while(true) { while(GetMessage) { } } // Hier gehts weiter
-
PostThreadMessage while(GetMessage) { } // Hier gehts weiterautsch.
ich glaub das hier reicht

-
Das sollte gehen, aber lieber nicht die endlosschleife, das gibt nur Aerger.
Du kannst auch nur schreiben:
while(GetMessage);Aber musst mal gucken, was dein Compiler draus macht. Moeglicherweise schnippt die CPU-Auslastung hoch.
der Guenther
-
Der erste Thread kann sich doch schlafen legen und sich vom zweiten Thread wieder aufwecken lassen, wenn der die Nachricht geschickt hat.
//Thread 1 SleepEx (<Zeit>, true); //Thread 2 QueueUserAPC (...);Wichitg ist halt nur, dass das Handle vom ersten Thread dem zweiten bekannt ist.