Einzelnen Beitrag anzeigen

Benutzerbild von christian.noeding
christian.noeding

Registriert seit: 26. Mai 2005
Ort: Knw.-Remsfeld
119 Beiträge
 
Delphi XE2 Professional
 
#1

Comport-Hardwareausgabe verlangsamt Programmablauf

  Alt 6. Jul 2007, 10:22
Hallo Delphiler(innen)!

nun habe ich auch mal wieder ein Problem, bei dem mir keine gute Lösung einfallen will:


ich habe in meinem Programm (www.pcdimmer.de - Open-Source Delphi7-Programm) Plugins (normale Einsprung-DLLs), über die ich Hardware ansteuern kann. Jetzt ist denke ich jedem der schonmal mit dem Comport gearbeitet hat schonmal aufgefallen, dass das Programm kurz stockt, wenn es auf den Comport zugreift (extrem z.B. bei niedriger Baudrate). Da ich kontinuierlich Daten an Comports senden muss, verlangsamt sich dadurch der komplette Programmablauf.

Derzeit sende ich die Hardwareausgabe per normale Funktion an das Plugin. Diese DLL-Funktion ruft dann die Comport-Funktion auf. Bei mehreren aktiven Plugins gleichzeitig ist derzeit das Programm kaum noch nutzbar.

Gibt es eine Möglichkeit, wie ich die Hardwareausgabe und das Hauptprogramm so voneinander trennen kann, dass ich meine Daten an die DLL sende, diese dann z.B. über einen Ringpuffer die Daten in Ruhe ausgibt und zeitgleich mein Programm normal weiterarbeitet? Threads habe ich schon probiert, aber scheinbar bleibt die Comport-Komponente trotzdem ans Hauptprogramm gefesselt...




Vielen Dank für ein paar Vorschläge!

Christian
Christian Nöding
  Mit Zitat antworten Zitat