Interrupts erzeugen

CodeFatal

Erfahrenes Mitglied
Moin moin,

Ich hab hier zwar die Suchfunktion gequält aber wieder keine vernünftigen Treffer erziehlt...
Also ich Benutze MFC auf einem WinCE Zielsystem. Auf diesem Kommuniziere ich nun mit einem USB-Dongel über einen Virtuellen ComPort.
Das klappt auch soweit. jetzt möchte ich eine möglichst effektive Klasse haben, die mir das ganze an eine höher gelegene Schicht weiter gibt.
Dazu hab ich mir überlegt einenn WriteThread zu erstellen, der bei Bedarf gestartet wird und mir daten an den ComPort schickt. Das Problem ist aber nun, das ich im ms Bereich viele Daten oder innerhalb von Tagen nur wenige Daten empfangen kann...
Meines Erachtens nach wäre es da nicht ratsam, nen Empfangsthread zu starten, der immer aktiv ist und in einer Schleiffe ewig den Port polled. Das klaut mir nur die eh schon mageren Recourcen:-(
Um das ganze möglichst vernünftig zu machen kam mir daher der Gedanke nach Interrupts bzw müsste es irgendwie möglichsein, eine Msg zuverschicken, die dann erst den richtigen Thread startet...
Kann mir da jemand nen Tipp zur Literatur und/oder ne gute Funktion nennen?

Danke schon mal im Voraus.

Gruss Michael
 
Die Idee ist mir wohl auch gekommen, aber dann rennt der ja alle 250 ms ab und zu... und falls dann nen Ereigniss eintritt, kurz nachdem ich den Thread schlafen gelegt habe, dann muss die angeschlossene Hardware 250 ms warten... Was für die recht lange ist, da die mit ca 8ms zwischen zwei Schritten arbeitet.

Kann man nicht Windows etwas überlisten und irgendwie Interruptroutinen erzeugen? Die müssen nicht auf die ms genau sein, aber sie müssen kommen.
 
Windows blockiert alle direkten Hardwarezugriffe -> blockiert auch alle Interrupts. (Ab Windows NT) Treiber könten eine Lösung darstellen, die haben direkten Hardwarezugriff aber ob die Interrupts nutzen können weiß ich nicht
 
Zurück