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