Warteschleife in Thread, keine reaktion von Form



  • Hallo,

    ich soll eine Steuerung für einen Servomotor, der eine
    serielle Schnittstelle besitz schreiben.

    Ich habe eine Klasse für die Schnittstelle und
    eine für die Steuerung des Motors.
    Das ganze möchte ich jetzt in einem Thread laufen
    lassen, dass das Programm noch bedienbar bleibt.

    Ich habe also eine Klasse von TThread abgeleitet,
    in der die Motor Klasse initialisiert wird, in welcher
    widerum dir Com Klasse initalisiert wird.

    Jetzt tritt aber der Fehler auf, dass ich in Motor Klasse
    auf ein Zeichen von der Com Schnittstelle warten muss.
    In dieser Zeit kann 1- bis 2 sekunden dauern, biss der
    Motor die nächste Position erreicht hat,
    friert aber auch die GUI ein, obwohl die Motor Klasse
    aus der Thread Klasse aufgerufen werden.

    Müssen alle Klassen die in einem Thread laufen sollen,
    von TThread abgeleitet sein.

    Vielen Dank schonmal!



  • Nein, müssen sie nicht . Wartest du im GUI auf irgend einen Input des Motors oder so?

    -junix



  • Nein, vom Haupthread wird nur der Workingthread aufgerufen, welcher dann
    kommplett dir Kontrolle über die Steuerung der Anlage übernimmt.
    Die Bedienung soll dann nur noch über einen Fußtaster erfolgen,
    welcher über eine Digital IO Karte abgefragt wird.

    Das sind dann immer relativ lange Warteschleifen , und ich möchte
    eigentlcih nicht, dass das Programm wie abgestürtzt aussieht!


Anmelden zum Antworten