Sleep()/sleep() Probleme
-
Nimmst Du alternativ
PostMessage
-
CodeFinder schrieb:
Nimmst Du alternativ
PostMessage
Was unter Umständen nicht geht, wenn die Daten in einem Puffer stehen, der eine begrenzte Lebenszeit hat...
Zudem muss man dann auch beachten, dass die Message Queue für PostMessage in der Größe begrenzt ist...
-
Jops, klar hängt vom Verwendungszweck ab...
-
Danke Leute,
hatte aber dummerweise nix damit zutun.
War eigene Dummheit. Hab für 2 verschiedene Threads nur eine CriticalSection gehabt. Und da ist es kollidiert. Kann man mit einem Debugger aber echt schlecht erkennen.
-
Nightstorm schrieb:
Danke Leute,
hatte aber dummerweise nix damit zutun.
War eigene Dummheit. Hab für 2 verschiedene Threads nur eine CriticalSection gehabt. Und da ist es kollidiert. Kann man mit einem Debugger aber echt schlecht erkennen.Doch kann man. Man kann im Debugger beide Threads anhalten und sehen wo sie stehen!
Zudem! Es ist doch korrekt für beide Threads nur eine Criticalsection zu haben, wenn es darum geht ein und den selben Bereich zu sichern!
Ganz verstehe ich das nicht!
-
1. Nein, ein Thread ist für die Devices, und der zweite für die IO´s
2. geht das auch mit dem Codeblocks? und welchen Befehl muss ich dann nutzen?
-
Nightstorm@home schrieb:
1. Nein, ein Thread ist für die Devices, und der zweite für die IO´s
Sorry aber irgendwie stehe ich auf dem Schlauch. Warum musst Du das in dieser Form gegeneinander sichern.
Nightstorm@home schrieb:
2. geht das auch mit dem Codeblocks? und welchen Befehl muss ich dann nutzen?
Was meinst Du damit "Codeblocks"?
Ich meinte im Debugger einfach "Break all" ausführen. Dann öffnest Du das Threads Fenster und machst überall mal einen Doppelklick! Und siche da anhand des Callstacks kannst Du wunderbar sehen, wer sich hier wie totblockt.
-
Er meint die "Code::Blocks" IDE - hab aber leider keine Ahnung ob die einen Debugger hat bzw. unterstützt der das kann.
-
Man kann den GNU Debugger mit Code::Blocks nutzen; also ja
.
-
@all Danke, für die Hilfe.
@Martin, ich habe für die Devices eine verkette Liste, und für die zu den Devices geschickten IO´s eine verkette Liste. Und die muss man nicht gegenseitig blocken. Ich hab sie aber gegenseitig geblockt, weil ich dummerweise die selbe CriticalSection für beide verwendet habe. Es war programmierer Faulheit.